| 1 /* |
|
| 2 * nmmessage.h |
|
| 3 * |
|
| 4 * Copyright (c) 2004 Novell, Inc. All Rights Reserved. |
|
| 5 * |
|
| 6 * This program is free software; you can redistribute it and/or modify |
|
| 7 * it under the terms of the GNU General Public License as published by |
|
| 8 * the Free Software Foundation; version 2 of the License. |
|
| 9 * |
|
| 10 * This program is distributed in the hope that it will be useful, |
|
| 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 13 * GNU General Public License for more details. |
|
| 14 * |
|
| 15 * You should have received a copy of the GNU General Public License |
|
| 16 * along with this program; if not, write to the Free Software |
|
| 17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
|
| 18 * |
|
| 19 */ |
|
| 20 |
|
| 21 #ifndef PURPLE_NOVELL_NMMESSAGE_H |
|
| 22 #define PURPLE_NOVELL_NMMESSAGE_H |
|
| 23 |
|
| 24 typedef struct _NMMessage NMMessage; |
|
| 25 |
|
| 26 #include "nmconference.h" |
|
| 27 |
|
| 28 /** |
|
| 29 * Creates a new message. |
|
| 30 * |
|
| 31 * The returned message should be released by calling |
|
| 32 * nm_release_message |
|
| 33 * |
|
| 34 * @param text The message text |
|
| 35 * @return A newly allocated message |
|
| 36 */ |
|
| 37 NMMessage *nm_create_message(const char *text); |
|
| 38 |
|
| 39 /** |
|
| 40 * Increment the reference count for the message object. |
|
| 41 * |
|
| 42 * @param msg The message |
|
| 43 */ |
|
| 44 void nm_message_add_ref(NMMessage * msg); |
|
| 45 |
|
| 46 /** |
|
| 47 * Releases a message. |
|
| 48 * |
|
| 49 * @param msg The message |
|
| 50 */ |
|
| 51 void nm_release_message(NMMessage * msg); |
|
| 52 |
|
| 53 /** |
|
| 54 * Returns the message text |
|
| 55 * |
|
| 56 * @param msg The message |
|
| 57 * @return The message text |
|
| 58 */ |
|
| 59 const char *nm_message_get_text(NMMessage * msg); |
|
| 60 |
|
| 61 /** |
|
| 62 * Sets the conference object for a message |
|
| 63 * |
|
| 64 * @param msg The message |
|
| 65 * @param conf The conference to associate with the message |
|
| 66 * @return RVALUE_OK on success |
|
| 67 */ |
|
| 68 void nm_message_set_conference(NMMessage * msg, NMConference * conf); |
|
| 69 |
|
| 70 /** |
|
| 71 * Returns the conference object associated with the message |
|
| 72 * |
|
| 73 * Note: this does not increment the reference count for the |
|
| 74 * conference and the conference should NOT be released with |
|
| 75 * nm_release_conference. If the reference needs to be kept |
|
| 76 * around nm_conference_add_ref should be called. |
|
| 77 * |
|
| 78 * @param msg The message |
|
| 79 * @return The conference associated with this message |
|
| 80 */ |
|
| 81 NMConference *nm_message_get_conference(NMMessage * msg); |
|
| 82 |
|
| 83 #endif /* PURPLE_NOVELL_NMMESSAGE_H */ |
|