1
#ifndef TNY_COMMON_PRIV_H
2
#define TNY_COMMON_PRIV_H
4
/* libtinymail - The Tiny Mail base library
5
* Copyright (C) 2006-2007 Philip Van Hoof <pvanhoof@gnome.org>
7
* This library is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU Lesser General Public
9
* License as published by the Free Software Foundation; either
10
* version 2 of the License, or (at your option) any later version.
12
* This library is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
* Lesser General Public License for more details.
17
* You should have received a copy of the GNU Lesser General Public
18
* License along with self library; if not, write to the
19
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20
* Boston, MA 02111-1307, USA.
23
#include <tny-shared.h>
24
#include <tny-status.h>
25
#include <tny-error.h>
26
#include <tny-lockable.h>
28
#ifndef TINYMAIL_ENABLE_PRIVATE_API
29
#error "This is private API that should only be used by tinymail internally."
34
/* Implementations in tny-progress-info.c and tny-idle-stopper.c */
36
typedef struct _TnyIdleStopper TnyIdleStopper;
37
typedef struct _TnyProgressInfo TnyProgressInfo;
39
TnyIdleStopper* tny_idle_stopper_new (void);
40
TnyIdleStopper* tny_idle_stopper_copy (TnyIdleStopper *stopper);
42
TnyProgressInfo* tny_progress_info_new (GObject *self, TnyStatusCallback status_callback, TnyStatusDomain domain, TnyStatusCode code, const gchar *what, gint sofar, gint oftotal, TnyIdleStopper* stopper, TnyLockable *uid_lock, gpointer user_data);
43
gboolean tny_progress_info_idle_func (gpointer data);
44
void tny_progress_info_destroy (gpointer data);
46
void tny_idle_stopper_stop (TnyIdleStopper *stopper);
47
void tny_idle_stopper_destroy(TnyIdleStopper *stopper);
48
gboolean tny_idle_stopper_is_stopped (TnyIdleStopper* stopper);