Changeset 10a96f4 for protocols/bee.h


Ignore:
Timestamp:
2010-03-29T12:25:01Z (10 years ago)
Author:
Wilmer van der Gaast <wilmer@…>
Branches:
master
Children:
81e04e1
Parents:
38ee021
Message:

Start restoring IM-related bits, added bee_user.c with basic functions
and UI callbacks.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • protocols/bee.h

    r38ee021 r10a96f4  
    1 typedef struct bee_ui
    2 {
    3         void *data;
    4 } bee_ui_t;
     1  /********************************************************************\
     2  * BitlBee -- An IRC to other IM-networks gateway                     *
     3  *                                                                    *
     4  * Copyright 2002-2010 Wilmer van der Gaast and others                *
     5  \********************************************************************/
     6
     7/* Stuff to handle, save and search buddies                             */
     8
     9/*
     10  This program is free software; you can redistribute it and/or modify
     11  it under the terms of the GNU General Public License as published by
     12  the Free Software Foundation; either version 2 of the License, or
     13  (at your option) any later version.
     14
     15  This program is distributed in the hope that it will be useful,
     16  but WITHOUT ANY WARRANTY; without even the implied warranty of
     17  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     18  GNU General Public License for more details.
     19
     20  You should have received a copy of the GNU General Public License with
     21  the Debian GNU/Linux distribution in /usr/share/common-licenses/GPL;
     22  if not, write to the Free Software Foundation, Inc., 59 Temple Place,
     23  Suite 330, Boston, MA  02111-1307  USA
     24*/
     25
     26#ifndef __BEE_H__
     27#define __BEE_H__
     28
     29struct bee_ui_funcs;
    530
    631typedef struct bee
     
    1136        GSList *accounts;
    1237       
    13         //const bee_ui_funcs_t *ui;
     38        const struct bee_ui_funcs *ui;
    1439        void *ui_data;
    1540} bee_t;
     
    1742bee_t *bee_new();
    1843void bee_free( bee_t *b );
     44
     45typedef enum
     46{
     47        BEE_USER_ONLINE = 1,
     48        BEE_USER_AWAY = 2,
     49} bee_user_flags_t;
     50
     51typedef struct bee_user
     52{
     53        struct im_connection *ic;
     54        char *handle;
     55        char *fullname;
     56        char *group;
     57
     58        char *away;
     59        char *status_msg;
     60       
     61        bee_t *bee;
     62        void *ui_data;
     63} bee_user_t;
     64
     65typedef struct bee_ui_funcs
     66{
     67        gboolean (*user_new)( bee_t *bee, struct bee_user *bu );
     68        gboolean (*user_free)( bee_t *bee, struct bee_user *bu );
     69} bee_ui_funcs_t;
     70
     71
     72/* bee.c */
     73bee_t *bee_new();
     74void bee_free( bee_t *b );
     75
     76/* bee_user.c */
     77bee_user_t *bee_user_new( bee_t *bee, struct im_connection *ic, const char *handle );
     78int bee_user_free( bee_t *bee, struct im_connection *ic, const char *handle );
     79bee_user_t *bee_user_by_handle( bee_t *bee, struct im_connection *ic, const char *handle );
     80
     81#endif /* __BEE_H__ */
Note: See TracChangeset for help on using the changeset viewer.