view doc/gtkconv-signals.dox @ 12737:a1e241dd50b6

[gaim-migrate @ 15082] Conversation and Logging Message Timestamp Formatting... The idea here is that we should honor the user's locale for message timestamps in the conversation window and in the logs. I've added a signal and created a plugin that allows one to override this. The plugin is named "Message Timestamp Formats". Enabling that will by default change the timestamps back to the format we had before this commit. (That is to say, it forces the old format and ignores the locale.) The plugin also has options to show dates in the timestamps "Always", "In Chats", or "For Delayed Messages" (the default behavior). This addresses all requests for 12 hour timestamps, allows people to continue with the 24 hour timestamps we have, even if their locale says differently, enables plugin authors to override the message timestamp formats in any way they choose, and addresses requests for complete dates in logs. To recap, if you don't like the format string your locale has, enabled the "Message Timestamp Formats" plugin. committer: Tailor Script <tailor@pidgin.im>
author Richard Laager <rlaager@wiktel.com>
date Thu, 05 Jan 2006 20:17:36 +0000
parents 366326fa9cb4
children f09c6e8df82c
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)(GaimGtkWindow *source, GaimGtkWindow *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)(GaimConversation *conv, struct tm *tm);
  @endsignalproto
  @signaldesc
   Emitted to allow plugins to customize the timestamp on a message.
  @param conv The conversation the message belongs to.
  @param tm 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)(GaimAccount *account, GaimConversation *conv,
                              char **message, GaimMessageFlags 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 the message is being displayed on.
  @param conv    The conversation the message is being displayed on.
  @param message A pointer to the message that will be displayed.
  @param flags   The message flags.
  @return @c TRUE if the message should be canceled, or @c FALSE otherwise.
 @endsignaldef

 @signaldef displayed-im-msg
  @signalproto
void (*displayed_im_msg)(GaimAccount *account, GaimConversation *conv,
                         const char *message, GaimMessageFlags flags);
  @endsignalproto
  @signaldesc
   Emitted after a message is displayed in an IM conversation.
  @param account The account the message was displayed on.
  @param conv    The conversation the message was displayed on.
  @param message The message that was displayed.
  @param flags   The message flags.
 @endsignaldef

 @signaldef displaying-chat-msg
  @signalproto
gboolean (*displaying_chat_msg)(GaimAccount *account, GaimConversation *conv,
                                char **message, GaimMessageFlags 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 on.
  @param conv    The conversation the message is being displayed on.
  @param message A pointer to the message that will be displayed.
  @param flags   The message flags.
  @return @c TRUE if the message should be canceled, or @c FALSE otherwise.
 @endsignaldef

 @signaldef displayed-chat-msg
  @signalproto
void (*displayed_chat_msg)(GaimAccount *account, GaimConversation *conv,
                           const char *message, GaimMessageFlags flags);
  @endsignalproto
  @signaldesc
   Emitted after a message is displayed in a chat conversation.
  @param account The account the message was displayed on.
  @param conv    The conversation the message was displayed on.
  @param message The message that was displayed.
  @param flags   The message flags.
 @endsignaldef

 @signaldef conversation-switched
  @signalproto
void (*conversation_switched)(GaimConversation *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