Mercurial > pidgin.yaz
view src/gaim-disclosure.h @ 7805:5f0bb52c0609
[gaim-migrate @ 8452]
File transfer changes from marv.
This fixes various ft related bugs, including:
* Sometimes clicking cancel on a send would crash.
* We seemed to leak the GaimXfer most of the time.
* Choosing to not overwrite the file would cancel the
receive altogether.
This should fix all these issues. It would be nice if
someone (SimGuy?) could test this for me, especially on
windows, to make sure i didn't break anything. Jabber
ft is untested, althoughi didn't make any changes in
the jabber source. So, it should still work, i just
can't comfirm it. Yahoo and OSCAR do still work.
Amoung other things, this patch impliments some
reference counting on the GaimXfer, so the ui can keep
it around a while if it wants, without leaking it
because we're afraid to destroy it.
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Mon, 08 Dec 2003 04:58:07 +0000 |
parents | d03fcb3f4be2 |
children | fa6395637e2c |
line wrap: on
line source
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * Authors: Iain Holmes <iain@ximian.com> * * Copyright 2002 Iain Holmes * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Street #330, Boston, MA 02111-1307, USA. * */ #ifndef __GAIM_DISCLOSURE_H__ #define __GAIM_DISCLOSURE_H__ #include <gtk/gtkcheckbutton.h> #ifdef __cplusplus extern "C" { #pragma } #endif #define GAIM_DISCLOSURE_TYPE (gaim_disclosure_get_type ()) #define GAIM_DISCLOSURE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GAIM_DISCLOSURE_TYPE, GaimDisclosure)) #define GAIM_DISCLOSURE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GAIM_DISCLOSURE_TYPE, GaimDisclosureClass)) #define IS_GAIM_DISCLOSURE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GAIM_DISCLOSURE_TYPE)) #define IS_GAIM_DISCLOSURE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GAIM_DISCLOSURE_TYPE)) typedef struct _GaimDisclosure GaimDisclosure; typedef struct _GaimDisclosureClass GaimDisclosureClass; typedef struct _GaimDisclosurePrivate GaimDisclosurePrivate; struct _GaimDisclosure { GtkCheckButton parent; GaimDisclosurePrivate *priv; }; struct _GaimDisclosureClass { GtkCheckButtonClass parent_class; }; GType gaim_disclosure_get_type (void); GtkWidget *gaim_disclosure_new (const char *shown, const char *hidden); void gaim_disclosure_set_container (GaimDisclosure *disclosure, GtkWidget *container); #ifdef __cplusplus } #endif #endif