⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nmevent.h

📁 Linux下的多协议即时通讯程序源代码
💻 H
字号:
/* * nmevent.h * * Copyright (c) 2004 Novell, Inc. All Rights Reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; version 2 of the License. * * This program 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 General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA	02111-1307	USA * */#ifndef __NM_EVENT_H__#define __NM_EVENT_H__typedef struct _NMEvent NMEvent;#include "nmuser.h"#include <sys/types.h>/** * Defines for the event types */#define	NMEVT_INVALID_RECIPIENT			101#define	NMEVT_UNDELIVERABLE_STATUS		102#define	NMEVT_STATUS_CHANGE				103#define	NMEVT_CONTACT_ADD				104#define	NMEVT_CONFERENCE_CLOSED			105#define	NMEVT_CONFERENCE_JOINED			106#define	NMEVT_CONFERENCE_LEFT			107#define	NMEVT_RECEIVE_MESSAGE			108#define	NMEVT_RECEIVE_FILE				109#define NMEVT_USER_TYPING				112#define NMEVT_USER_NOT_TYPING			113#define NMEVT_USER_DISCONNECT			114#define NMEVT_SERVER_DISCONNECT			115#define NMEVT_CONFERENCE_RENAME			116#define NMEVT_CONFERENCE_INVITE			117#define NMEVT_CONFERENCE_INVITE_NOTIFY	118#define NMEVT_CONFERENCE_REJECT			119#define NMEVT_RECEIVE_AUTOREPLY			121#define NMEVT_START						NMEVT_INVALID_RECIPIENT#define NMEVT_STOP						NMEVT_RECEIVE_AUTOREPLY/** * Process the event. The event will be read, an NMEvent will * be created, and the event callback will be called. * * @param user		The main user structure. * @param type		The type of the event to read. * * @return			NM_OK on success */NMERR_T nm_process_event(NMUser * user, int type);/** * Creates an NMEvent * * The NMEvent should be released by calling * nm_release_event. * * @param type		The event type, see defines above. * @param source	The DN of the event source. * @param gmt		The time that the event occurred. * * @return 			The new NMEvent */NMEvent *nm_create_event(int type, const char *source, guint32 gmt);/** * Releases an NMEvent * * @param event		The event to release * */void nm_release_event(NMEvent * event);/** * Sets the conference object for the given event. * * @param event			The event. * @param conference	The conference to associate with the event. * */void nm_event_set_conference(NMEvent * event, NMConference * conference);/** * Returns the conference object associated with the given event. This should not * be released. If it needs to be kept around call nm_conference_addref(). * * @param event	The event. * * @return		The conference associated with the event, or NULL *				if no conference has been set for the event. */NMConference *nm_event_get_conference(NMEvent * event);/** * Sets the NMUserRecord object for the given event. * The user record represents the event source. * * @param event			The event. * @param user_record	The user record to associate with the event. * */void nm_event_set_user_record(NMEvent * event, NMUserRecord * user_record);/** * Returns the NMUserRecord object associated with the given event. * The user record represents the event source. This should not * be released. If it needs to be kept around call * nm_user_record_add_ref(). * * @param event	The event. * * @return		The user record associated with the event, or NULL *				if no user record has been set for the event. */NMUserRecord *nm_event_get_user_record(NMEvent * event);/** * Sets the text to associate with the given event. * * @param event	The event. * @param text	The text to associate with the event. * */void nm_event_set_text(NMEvent * event, const char *text);/** * Returns the text associated with the given event. * * @param event	The event. * * @return		The text associated with the event, or NULL *				if no text has been set for the event. */const char *nm_event_get_text(NMEvent * event);/** * Returns the source of the event (this will be the full DN of the * event source). * * @param event	The event. * * @return		The full DN of the event's source. */const char *nm_event_get_source(NMEvent * event);/** * Returns the type of the event. See the defines above for * a list of possible event types. * * @param event	The event. * * @return		The type of the event. * */int nm_event_get_type(NMEvent * event);/** * Returns the time that the event took place. * * @param event	The event. * * @return		The timestamp for the event. */time_t nm_event_get_gmt(NMEvent * event);#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -