From 6454ebb3b77f1e7b86ac3267bb56da3ee0309537 Mon Sep 17 00:00:00 2001 From: Srinivasa Ragavan Date: Mon, 11 Jul 2005 08:44:02 +0000 Subject: Added gnome-vfs-module-2.0 to E_WIDGET_CFLAGS. Added e-attachment-bar.[ch] 2005-07-11 Srinivasa Ragavan * configure.in: Added gnome-vfs-module-2.0 to E_WIDGET_CFLAGS. * Added e-attachment-bar.[ch] e-attachment.[ch] e-attachment.glade to directory structure and the Makefile.am svn path=/trunk/; revision=29708 --- widgets/misc/e-attachment.h | 98 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 widgets/misc/e-attachment.h (limited to 'widgets/misc/e-attachment.h') diff --git a/widgets/misc/e-attachment.h b/widgets/misc/e-attachment.h new file mode 100644 index 0000000000..1a0ef7d167 --- /dev/null +++ b/widgets/misc/e-attachment.h @@ -0,0 +1,98 @@ +/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ +/* e-attachment.h + * + * Copyright (C) 2005 Novell, Inc. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of version 2 of the GNU General Public + * published by the Free Software Foundation; either version 2 of the + * License as published by the Free Software Foundation. + * + * 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 Place - Suite 330, + * Boston, MA 02111-1307, USA. + * + * Author: Ettore Perazzoli + * Srinivasa Ragavan + */ + +#ifndef __E_ATTACHMENT_H__ +#define __E_ATTACHMENT_H__ + +#include +#include +#include +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#pragma } +#endif /* __cplusplus */ + +#define E_TYPE_ATTACHMENT (e_attachment_get_type ()) +#define E_ATTACHMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), E_TYPE_ATTACHMENT, EAttachment)) +#define E_ATTACHMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), E_TYPE_ATTACHMENT, EAttachmentClass)) +#define E_IS_ATTACHMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), E_TYPE_ATTACHMENT)) +#define E_IS_ATTACHMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), E_TYPE_ATTACHMENT)) + + +typedef struct _EAttachment EAttachment; +typedef struct _EAttachmentClass EAttachmentClass; + +struct _EAttachment { + GObject parent; + + GladeXML *editor_gui; + + CamelMimePart *body; + gboolean guessed_type; + gulong size; + + GdkPixbuf *pixbuf_cache; + + GnomeVFSAsyncHandle *handle; + gboolean is_available_local; + char *file_name; + char *description; + gboolean disposition; + int index; + + /* Status of signed/encrypted attachments */ + camel_cipher_validity_sign_t sign; + camel_cipher_validity_encrypt_t encrypt; +}; + +struct _EAttachmentClass { + GObjectClass parent_class; + + void (*changed) (EAttachment *attachment); +}; + +GType e_attachment_get_type (void); +EAttachment *e_attachment_new (const char *file_name, + const char *disposition, + CamelException *ex); +EAttachment * e_attachment_new_remote_file (const char *file_name, + const char *disposition, + CamelException *ex); +void e_attachment_build_remote_file (const char *filename, + EAttachment *attachment, + const char *disposition, + CamelException *ex); +EAttachment *e_attachment_new_from_mime_part (CamelMimePart *part); +void e_attachment_edit (EAttachment *attachment, + GtkWidget *parent); + +#ifdef __cplusplus +} +#endif /* __cplusplus */ + +#endif /* __E_ATTACHMENT_H__ */ -- cgit