00001
00025 #ifndef _GNT_CONV_H
00026 #define _GNT_CONV_H
00027
00028 #include <gnt.h>
00029 #include <gntwidget.h>
00030 #include <gntmenuitem.h>
00031
00032 #include "conversation.h"
00033
00034
00035 #define FINCH_CONV(conv) ((FinchConv *)(conv)->ui_data)
00036
00037
00038
00039
00042 typedef struct _FinchConv FinchConv;
00043 typedef struct _FinchConvChat FinchConvChat;
00044 typedef struct _FinchConvIm FinchConvIm;
00045
00046 struct _FinchConv
00047 {
00048 GList *list;
00049 PurpleConversation *active_conv;
00050
00051 GntWidget *window;
00052 GntWidget *entry;
00053 GntWidget *tv;
00054 GntWidget *menu;
00055 GntWidget *info;
00056 void *pad;
00057
00058 union
00059 {
00060 FinchConvChat *chat;
00061 FinchConvIm *im;
00062 } u;
00063 };
00064
00065 struct _FinchConvChat
00066 {
00067 GntWidget *userlist;
00068 void *pad1;
00069 void *pad2;
00070 };
00071
00072 struct _FinchConvIm
00073 {
00074 GntMenuItem *sendto;
00075 void *something_for_later;
00076 };
00077
00083 PurpleConversationUiOps *finch_conv_get_ui_ops(void);
00084
00088 void finch_conversation_init(void);
00089
00093 void finch_conversation_uninit(void);
00094
00100 void finch_conversation_set_active(PurpleConversation *conv);
00101
00109 void finch_conversation_set_info_widget(PurpleConversation *conv, GntWidget *widget);
00110
00113 #endif