diff options
author | Matthew Barnes <mbarnes@src.gnome.org> | 2009-03-09 11:31:24 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@src.gnome.org> | 2009-03-09 11:31:24 +0800 |
commit | f963cc39a7d21f64f578dae50fd08c44181a3bf6 (patch) | |
tree | 7cdf0c0c9bab037272ba6fca48aebbccd4c0de74 /widgets/misc/e-attachment.h | |
parent | 85d0142d21286ce87cd5f6c3d1e2f71aa994151f (diff) | |
download | gsoc2013-evolution-f963cc39a7d21f64f578dae50fd08c44181a3bf6.tar gsoc2013-evolution-f963cc39a7d21f64f578dae50fd08c44181a3bf6.tar.gz gsoc2013-evolution-f963cc39a7d21f64f578dae50fd08c44181a3bf6.tar.bz2 gsoc2013-evolution-f963cc39a7d21f64f578dae50fd08c44181a3bf6.tar.lz gsoc2013-evolution-f963cc39a7d21f64f578dae50fd08c44181a3bf6.tar.xz gsoc2013-evolution-f963cc39a7d21f64f578dae50fd08c44181a3bf6.tar.zst gsoc2013-evolution-f963cc39a7d21f64f578dae50fd08c44181a3bf6.zip |
Cleaning up the attachment bar, centralizing its popup menu, and converting
everything to GtkUIManager/GtkActions. Saving progress mid-stream... not
sure about the MIME part utilities yet.
Also, add some EActivity subclasses. Considering an EFileActivity subclass
for asynchronous GIO operations (loading/saving attachments, etc.), but still
ironing out details.
svn path=/branches/kill-bonobo/; revision=37389
Diffstat (limited to 'widgets/misc/e-attachment.h')
-rw-r--r-- | widgets/misc/e-attachment.h | 116 |
1 files changed, 67 insertions, 49 deletions
diff --git a/widgets/misc/e-attachment.h b/widgets/misc/e-attachment.h index 7b45f24ae5..c69189c189 100644 --- a/widgets/misc/e-attachment.h +++ b/widgets/misc/e-attachment.h @@ -15,14 +15,14 @@ * * Authors: * Ettore Perazzoli <ettore@ximian.com> - * Srinivasa Ragavan <sragavan@novell.com> + * Srinivasa Ragavan <sragavan@novell.com> * * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com) * */ -#ifndef __E_ATTACHMENT_H__ -#define __E_ATTACHMENT_H__ +#ifndef E_ATTACHMENT_H +#define E_ATTACHMENT_H #include <gio/gio.h> #include <gtk/gtk.h> @@ -31,73 +31,91 @@ #include <camel/camel-exception.h> #include <camel/camel-cipher-context.h> -#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; +/* Standard GObject macros */ +#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(cls) \ + (G_TYPE_CHECK_CLASS_CAST \ + ((cls), E_TYPE_ATTACHMENT, EAttachmentClass)) +#define E_IS_ATTACHMENT(obj) \ + (G_TYPE_CHECK_INSTANCE_TYPE \ + ((obj), E_TYPE_ATTACHMENT)) +#define E_IS_ATTACHMENT_CLASS(cls) \ + (G_TYPE_CHECK_CLASS_TYPE \ + ((obj), E_TYPE_ATTACHMENT)) +#define E_ATTACHMENT_GET_CLASS(obj) \ + (G_TYPE_INSTANCE_GET_CLASS \ + ((obj), E_TYPE_ATTACHMENT, EAttachmentClass)) + +G_BEGIN_DECLS + +typedef struct _EAttachment EAttachment; +typedef struct _EAttachmentClass EAttachmentClass; +typedef struct _EAttachmentPrivate EAttachmentPrivate; struct _EAttachment { GObject parent; - GladeXML *editor_gui; - - CamelMimePart *body; gboolean guessed_type; gulong size; - GdkPixbuf *pixbuf_cache; - GCancellable *cancellable; gboolean is_available_local; int percentage; - char *file_name; - char *description; - gboolean disposition; int index; char *store_uri; /* Status of signed/encrypted attachments */ camel_cipher_validity_sign_t sign; camel_cipher_validity_encrypt_t encrypt; + + EAttachmentPrivate *priv; }; struct _EAttachmentClass { GObjectClass parent_class; - void (*changed) (EAttachment *attachment); - void (*update) (EAttachment *attachment, char *msg); + void (*changed) (EAttachment *attachment); + void (*update) (EAttachment *attachment, + gchar *message); }; -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 (GtkWindow *error_dlg_parent, - const char *url, - const char *disposition, - const char *path, - 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__ */ +GType e_attachment_get_type (void); +EAttachment * e_attachment_new (const gchar *filename, + const gchar *disposition, + CamelException *ex); +EAttachment * e_attachment_new_remote_file (GtkWindow *error_dlg_parent, + const gchar *url, + const gchar *disposition, + const gchar *path, + CamelException *ex); +void e_attachment_build_remote_file (const gchar *filename, + EAttachment *attachment, + CamelException *ex); +EAttachment * e_attachment_new_from_mime_part (CamelMimePart *part); +void e_attachment_edit (EAttachment *attachment, + GtkWindow *parent); +const gchar * e_attachment_get_description (EAttachment *attachment); +void e_attachment_set_description (EAttachment *attachment, + const gchar *description); +const gchar * e_attachment_get_disposition (EAttachment *attachment); +void e_attachment_set_disposition (EAttachment *attachment, + const gchar *disposition); +const gchar * e_attachment_get_filename (EAttachment *attachment); +void e_attachment_set_filename (EAttachment *attachment, + const gchar *filename); +CamelMimePart * e_attachment_get_mime_part (EAttachment *attachment); +const gchar * e_attachment_get_mime_type (EAttachment *attachment); +GdkPixbuf * e_attachment_get_thumbnail (EAttachment *attachment); +void e_attachment_set_thumbnail (EAttachment *attachment, + GdkPixbuf *pixbuf); +gboolean e_attachment_is_image (EAttachment *attachment); +gboolean e_attachment_is_inline (EAttachment *attachment); + +G_END_DECLS + +#endif /* E_ATTACHMENT_H */ |