view doc/gtkconv-signals.dox @ 17725:1873848dfddb

Make the Conversation->More menu work for Chats. The chat needs to be on your buddy list for this to work. Creating a transient PurpleChat blist node for generating the menu for chats not on the buddy list does not work well because the menu item callbacks expect the node to still exist.
author Stu Tomlinson <stu@nosnilmot.com>
date Mon, 04 Jun 2007 16:18:34 +0000
parents 8cf53d7a0887
children 7971aadbf56c
line wrap: on
line source

/** @page gtkconv-signals GtkConv Signals

 @signals
  @signal conversation-dragging
  @signal conversation-timestamp
  @signal displaying-im-msg
  @signal displayed-im-msg
  @signal displaying-chat-msg
  @signal displayed-chat-msg
  @signal conversation-switched
 @endsignals

 <hr>

 @signaldef conversation-dragging
  @signalproto
void (*conversation_dragging)(PidginWindow *source, PidginWindow *destination);
  @endsignalproto
  @signaldesc
   Emitted when a conversation is being drag and dropped between windows.
  @param source The window where the conversation is.
  @param destination The window where the conversation will be moved to.
 @endsignaldef

 @signaldef conversation-timestamp
  @signalproto
char *(*conversation_timestamp)(PurpleConversation *conv, time_t when);
  @endsignalproto
  @signaldesc
   Emitted to allow plugins to customize the timestamp on a message.
  @param conv The conversation the message belongs to.
  @param when The time to be converted to a string.
  @return A textual representation of the time, or @c NULL to use a
          default format.
 @endsignaldef


 @signaldef displaying-im-msg
  @signalproto
gboolean (*displaying_im_msg)(PurpleAccount *account, const char *who,
                              char **message, PurpleConversation *conv,
                              PurpleMessageFlags flags);
  @endsignalproto
  @signaldesc
   Emitted just before a message is displayed in an IM conversation.
   @a message is a pointer to a string, so the plugin can replace the
   message that will be displayed. This can also be used to cancel displaying
   a message by returning @c TRUE.
  @note
   Make sure to free @a *message before you replace it!
  @param account The account.
  @param who     The name of the user.
  @param message A pointer to the message.
  @param conv    The conversation.
  @param flags   Flags for this message.
  @return @c TRUE if the message should be canceled, or @c FALSE otherwise.
 @endsignaldef

 @signaldef displayed-im-msg
  @signalproto
void (*displayed_im_msg)(PurpleAccount *account, const char *who,
                         char *message, PurpleConversation *conv,
                         PurpleMessageFlags flags);
  @endsignalproto
  @signaldesc
   Emitted after a message is displayed in an IM conversation.
  @param account The account.
  @param who     The name of the user.
  @param message The message.
  @param conv    The conversation.
  @param flags   Flags for this message.
 @endsignaldef

 @signaldef displaying-chat-msg
  @signalproto
gboolean (*displaying_chat_msg)(PurpleAccount *account, const char *who,
                                char **message, PurpleConversation *conv,
                                PurpleMessageFlags flags);
  @endsignalproto
  @signaldesc
   Emitted just before a message is displayed in a chat.
   @a message is a pointer to a string, so the plugin can replace the
   message that will be displayed. This can also be used to cancel displaying
   a message by returning @c TRUE.
  @note
   Make sure to free @a *message before you replace it!
  @param account The account the message is being displayed and sent on.
  @param who     The name of the user.
  @param message A pointer to the message that will be displayed and sent.
  @param conv    The conversation the message is being displayed and sent on.
  @param flags   Flags for this message.
  @return @c TRUE if the message should be canceled, or @c FALSE otherwise.
 @endsignaldef

 @signaldef displayed-chat-msg
  @signalproto
void (*displayed_chat_msg)(PurpleAccount *account, const char *who,
                           char *message, PurpleConversation *conv,
                           PurpleMessageFlags flags);
  @endsignalproto
  @signaldesc
   Emitted after a message is displayed in a chat conversation.
  @param account The account the message is being displayed and sent on.
  @param who     The name of the user.
  @param message A pointer to the message that will be displayed and sent.
  @param conv    The conversation the message is being displayed and sent on.
  @param flags   Flags for this message.
 @endsignaldef

 @signaldef conversation-switched
  @signalproto
void (*conversation_switched)(PurpleConversation *conv);
  @endsignalproto
  @signaldesc
   Emitted when a window switched from one conversation to another.
  @param new_conv The now active conversation.
 @endsignaldef

*/
// vim: syntax=c tw=75 et