Changeset 1827

Show
Ignore:
Timestamp:
04/23/07 20:31:01
Author:
pvanhoof
Message:

Introduction of the TnyStatus infrastructure

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/ChangeLog

    r1820 r1827  
     12007-04-23  Philip Van Hoof  <pvanhoof@gnome.org> 
     2 
     3        * Introduction of the TnyStatus infrastructure 
     4        * Changed the TnyStatusCallback function prototype to reflect the 
     5        TnyStatus changes 
     6        * Updated the demo-ui to start using the TnyStatus infrastructure 
     7 
     8        * This was a major API change 
     9 
    1102007-04-21  Philip Van Hoof  <pvanhoof@gnome.org> 
    211 
  • trunk/libtinymail-camel/tny-camel-folder.c

    r1820 r1827  
    2626#include <string.h> 
    2727 
     28#include <tny-status.h> 
    2829#include <tny-folder-store.h> 
    2930#include <tny-folder.h> 
     
    788789        if (minfo && minfo->status_callback) 
    789790        { 
    790                 minfo->status_callback (minfo->self, (const gchar*)info->what,  
    791                         info->sofar, info->oftotal, minfo->user_data); 
     791                TnyStatus *status = tny_status_new (TNY_FOLDER_STATUS,  
     792                        TNY_FOLDER_STATUS_CODE_REFRESH, 
     793                        info->sofar, info->oftotal, info->what); 
     794 
     795                minfo->status_callback (G_OBJECT (minfo->self), status,  
     796                        minfo->user_data); 
     797 
     798                tny_status_free (status); 
    792799        } 
    793800 
  • trunk/libtinymail/Makefile.am

    r1786 r1827  
    66        tny-shared.h \ 
    77        tny-error.h \ 
     8        tny-status.h \ 
    89        tny-list.h \ 
    910        tny-iterator.h \ 
     
    4041        $(libtinymail_1_0_headers) \ 
    4142        tny-error.c \ 
     43        tny-status.c \ 
    4244        tny-list.c \ 
    4345        tny-iterator.c \ 
  • trunk/libtinymail/tny-enums.h

    r1721 r1827  
    44 
    55G_BEGIN_DECLS 
     6 
     7 
     8typedef enum   
     9{ 
     10        TNY_FOLDER_STATUS_CODE_REFRESH = 1, 
     11        TNY_FOLDER_STATUS_CODE_GET_MSG = 2 
     12} TnyStatusCode; 
     13 
     14typedef enum  
     15{ 
     16        TNY_FOLDER_STATUS = 1 
     17} TnyStatusDomain; 
    618 
    719typedef enum { 
     
    2537 
    2638typedef enum { 
    27         TNY_FOLDER_ERROR, 
    28         TNY_FOLDER_STORE_ERROR, 
    29         TNY_TRANSPORT_ACCOUNT_ERROR 
     39        TNY_FOLDER_ERROR = 1, 
     40        TNY_FOLDER_STORE_ERROR = 2, 
     41        TNY_TRANSPORT_ACCOUNT_ERROR = 3, 
     42        TNY_ACCOUNT_ERROR = 4 
    3043} TnyErrorDomain; 
    3144 
    3245typedef enum { 
    33         TNY_FOLDER_ERROR_EXPUNGE, 
    34         TNY_FOLDER_ERROR_REMOVE_MSG, 
    35         TNY_FOLDER_ERROR_ADD_MSG, 
    36         TNY_FOLDER_ERROR_REFRESH, 
    37         TNY_FOLDER_ERROR_GET_MSG, 
    38         TNY_FOLDER_ERROR_TRANSFER_MSGS, 
    39         TNY_FOLDER_ERROR_SET_NAME, 
     46        TNY_ERROR_UNSPEC = 1 
     47        TNY_FOLDER_ERROR_SYNC = 2, 
     48        TNY_FOLDER_ERROR_REMOVE_MSG = 3, 
     49        TNY_FOLDER_ERROR_ADD_MSG = 4, 
     50        TNY_FOLDER_ERROR_REFRESH = 5, 
     51        TNY_FOLDER_ERROR_GET_MSG = 6, 
     52        TNY_FOLDER_ERROR_TRANSFER_MSGS = 7, 
     53        TNY_FOLDER_ERROR_SET_NAME = 8, 
     54        TNY_FOLDER_ERROR_COPY = 9,  
    4055 
    41         TNY_FOLDER_STORE_ERROR_REMOVE_FOLDER
    42         TNY_FOLDER_STORE_ERROR_GET_FOLDERS
    43         TNY_FOLDER_STORE_ERROR_CREATE_FOLDER
     56        TNY_FOLDER_STORE_ERROR_REMOVE_FOLDER = 10
     57        TNY_FOLDER_STORE_ERROR_GET_FOLDERS = 11
     58        TNY_FOLDER_STORE_ERROR_CREATE_FOLDER = 12
    4459 
    45         TNY_TRANSPORT_ACCOUNT_ERROR_SEND 
     60        TNY_TRANSPORT_ACCOUNT_ERROR_SEND = 13, 
     61 
     62        TNY_ACCOUNT_ERROR_TRY_CONNECT = 14 
    4663} TnyError; 
    4764 
  • trunk/libtinymail/tny-error.h

    r1511 r1827  
    2929enum _TnyErrorDomain 
    3030{ 
    31         TNY_FOLDER_ERROR
    32         TNY_FOLDER_STORE_ERROR
    33         TNY_TRANSPORT_ACCOUNT_ERROR
    34         TNY_ACCOUNT_ERROR 
     31        TNY_FOLDER_ERROR = 1
     32        TNY_FOLDER_STORE_ERROR = 2
     33        TNY_TRANSPORT_ACCOUNT_ERROR = 3
     34        TNY_ACCOUNT_ERROR = 4 
    3535}; 
    3636 
     
    3939enum _TnyError  
    4040{ 
    41         TNY_ERROR_UNSPEC
     41        TNY_ERROR_UNSPEC = 1
    4242 
    43         TNY_FOLDER_ERROR_SYNC
    44         TNY_FOLDER_ERROR_REMOVE_MSG
    45         TNY_FOLDER_ERROR_ADD_MSG
    46         TNY_FOLDER_ERROR_REFRESH
    47         TNY_FOLDER_ERROR_GET_MSG
    48         TNY_FOLDER_ERROR_TRANSFER_MSGS
    49         TNY_FOLDER_ERROR_SET_NAME
    50         TNY_FOLDER_ERROR_COPY
     43        TNY_FOLDER_ERROR_SYNC = 2
     44        TNY_FOLDER_ERROR_REMOVE_MSG = 3
     45        TNY_FOLDER_ERROR_ADD_MSG = 4
     46        TNY_FOLDER_ERROR_REFRESH = 5
     47        TNY_FOLDER_ERROR_GET_MSG = 6
     48        TNY_FOLDER_ERROR_TRANSFER_MSGS = 7
     49        TNY_FOLDER_ERROR_SET_NAME = 8
     50        TNY_FOLDER_ERROR_COPY = 9
    5151 
    52         TNY_FOLDER_STORE_ERROR_REMOVE_FOLDER
    53         TNY_FOLDER_STORE_ERROR_GET_FOLDERS
    54         TNY_FOLDER_STORE_ERROR_CREATE_FOLDER
     52        TNY_FOLDER_STORE_ERROR_REMOVE_FOLDER = 10
     53        TNY_FOLDER_STORE_ERROR_GET_FOLDERS = 11
     54        TNY_FOLDER_STORE_ERROR_CREATE_FOLDER = 12
    5555 
    56         TNY_TRANSPORT_ACCOUNT_ERROR_SEND
     56        TNY_TRANSPORT_ACCOUNT_ERROR_SEND = 13
    5757 
    58         TNY_ACCOUNT_ERROR_TRY_CONNECT 
     58        TNY_ACCOUNT_ERROR_TRY_CONNECT = 14 
    5959}; 
    6060 
  • trunk/libtinymail/tny-shared.h

    r1826 r1827  
    2222 
    2323#include <glib.h> 
     24#include <glib-object.h> 
    2425 
    2526G_BEGIN_DECLS 
    2627 
     28typedef struct _TnyStatus TnyStatus; 
    2729typedef struct _TnyAccountStore TnyAccountStore; 
    2830typedef struct _TnyAccountStoreIface TnyAccountStoreIface; 
     
    5456typedef void (*TnyGetMsgCallback) (TnyFolder *folder, TnyMsg *msg, GError **err, gpointer user_data); 
    5557typedef void (*TnyTransferMsgsCallback) (TnyFolder *folder, GError **err, gpointer user_data); 
    56 typedef void (*TnyStatusCallback) (gpointer self, const gchar *what, gint sofar, gint oftotal, gpointer user_data); 
     58typedef void (*TnyStatusCallback) (GObject *self, TnyStatus *status, gpointer user_data); 
    5759typedef enum _TnyHeaderFlags TnyHeaderFlags; 
    5860typedef enum _TnyHeaderPriorityFlags TnyHeaderPriorityFlags; 
     
    8284typedef enum _TnyError TnyError; 
    8385typedef enum _TnyErrorDomain TnyErrorDomain; 
     86typedef enum _TnyStatusCode TnyStatusCode; 
     87typedef enum _TnyStatusDomain TnyStatusDomain; 
    8488typedef struct _TnyMsgReceiveStrategy TnyMsgReceiveStrategy; 
    8589typedef struct _TnyMsgReceiveStrategyIface TnyMsgReceiveStrategyIface; 
     
    108112typedef struct _TnyPasswordGetterIface TnyPasswordGetterIface; 
    109113 
     114 
    110115G_END_DECLS 
    111116 
  • trunk/tests/c-demo/tny-demoui-summary-view.c

    r1820 r1827  
    5050#endif 
    5151 
     52#include <tny-status.h> 
    5253#include <tny-account-store.h> 
    5354#include <tny-account.h> 
     
    464465 
    465466static void 
    466 refresh_current_folder_status_update (gpointer folder, const gchar *what, gint sofar, gint oftotal, gpointer user_data) 
     467refresh_current_folder_status_update (GObject *sender, TnyStatus *status, gpointer user_data) 
    467468{ 
    468469        gchar *new_what; 
    469470 
    470471        TnyDemouiSummaryViewPriv *priv = user_data; 
    471         gdouble fraq = (((gdouble) sofar) / (( gdouble) oftotal)); 
    472  
    473         gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (priv->progress), fraq); 
     472         
     473        gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (priv->progress),  
     474               tny_status_get_percentage (status)); 
    474475        gtk_statusbar_pop (GTK_STATUSBAR (priv->status), priv->status_id); 
    475476 
    476         new_what = g_strdup_printf ("%s (%d/%d)", what, sofar, oftotal); 
     477        new_what = g_strdup_printf ("%s (%d/%d)", status->message, status->position,  
     478                status->of_total); 
     479 
    477480        gtk_statusbar_push (GTK_STATUSBAR (priv->status), priv->status_id, new_what); 
    478481        g_free (new_what);