2
/* Ekiga -- A VoIP and Video-Conferencing application
3
* Copyright (C) 2000-2006 Damien Sandras
5
* This program is free software; you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License as published by
7
* the Free Software Foundation; either version 2 of the License, or
8
* (at your option) any later version.
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.
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 Foundation,
17
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
20
* Ekiga is licensed under the GPL license and as a special exception,
21
* you have permission to link or otherwise combine this program with the
22
* programs OPAL, OpenH323 and PWLIB, and distribute the combination,
23
* without applying the requirements of the GNU GPL to the OPAL, OpenH323
24
* and PWLIB programs, as long as you do follow the requirements of the
25
* GNU GPL for all the rest of the software thus combined.
30
* chat_window.h - description
31
* -----------------------------
32
* begin : Wed Jan 23 2002
33
* copyright : (C) 2000-2006 by Damien Sandras
34
* description : This file contains functions to build the chat
35
* window. It uses DTMF tones.
36
* Additional code : Kenneth Christiansen <kenneth@gnu.org>
41
#ifndef __CHAT_WINDOW_H
42
#define __CHAT_WINDOW_H
49
* BEHAVIOR : Initializes the text chat view.
52
GtkWidget *gm_text_chat_window_new ();
55
* BEHAVIOR : Displays the colored text chat message,
56
* with some enhancements (context menu
57
* for uris, graphics for smileys, etc)
58
* PRE : The name of the (local or remote) user, the remote url,
59
* the message and 0 / 1 / 2 for local / remote user / error.
61
void gm_text_chat_window_insert (GtkWidget *chat_window,
69
* BEHAVIOR : Adds a page in the text chat window.
70
* PRE : The text chat window, the contact URL and name.
72
GtkWidget *gm_text_chat_window_add_tab (GtkWidget *chat_window,
73
const char *contact_url,
74
const char *contact_name);
78
* BEHAVIOR : Returns TRUE if the chat window already has a tab
80
* PRE : The text chat window, the contact URL and name.
82
gboolean gm_text_chat_window_has_tab (GtkWidget *chat_window,
87
* BEHAVIOR : Update the urls in the cache of the url entry. It is done
88
* using the list of the last 100 given/received/missed calls,
89
* but also using the address book contacts.
90
* PRE : The chat window GMObject.
92
void gm_text_chat_window_urls_history_update (GtkWidget *chat_window);
96
* BEHAVIOR : Update the chat window sensitivity and state following
97
* the given calling state for the given url (if NULL, update
99
* PRE : The main window GMObject.
100
* A valid GMManager calling state.
102
void gm_chat_window_update_calling_state (GtkWidget *chat_window,
105
unsigned calling_state);
109
* BEHAVIOR : Displays info message on the statusbar during a few seconds.
110
* Removes the previous message. The message is only displayed
111
* if the current tab is the one for the given URL (or if the
112
* given URL is NULL).
113
* PRE : The main window GMObject, followed by printf syntax format.
115
void gm_chat_window_push_info_message (GtkWidget *chat_window,
118
...) G_GNUC_PRINTF(3,4);
122
#endif /* __CHAT_WINDOW_H */