#include <glib-object.h>
#include <tny-msg.h>
+#define MODEST_ATTACHMENTS_VIEW_SELECTION_PREFIX "modest-attachment:"
+#define MODEST_ATTACHMENTS_VIEW_CLIPBOARD_TYPE "MODEST_ATTACHMENT"
+#define MODEST_ATTACHMENTS_VIEW_CLIPBOARD_TYPE_INDEX 0
+
G_BEGIN_DECLS
#define MODEST_TYPE_ATTACHMENTS_VIEW (modest_attachments_view_get_type ())
#define MODEST_IS_ATTACHMENTS_VIEW_CLASS(vtable) (G_TYPE_CHECK_CLASS_TYPE ((vtable), MODEST_TYPE_ATTACHMENTS_VIEW))
#define MODEST_ATTACHMENTS_VIEW_GET_CLASS(inst) (G_TYPE_INSTANCE_GET_CLASS ((inst), MODEST_TYPE_ATTACHMENTS_VIEW, ModestAttachmentsViewClass))
+typedef enum _ModestAttachmentsViewStyle {
+ MODEST_ATTACHMENTS_VIEW_STYLE_SELECTABLE,
+ MODEST_ATTACHMENTS_VIEW_STYLE_LINKS,
+ MODEST_ATTACHMENTS_VIEW_STYLE_NO_FOCUS,
+} ModestAttachmentsViewStyle;
+
typedef struct _ModestAttachmentsView ModestAttachmentsView;
typedef struct _ModestAttachmentsViewClass ModestAttachmentsViewClass;
struct _ModestAttachmentsView
{
- GtkTextView parent;
+ GtkEventBox parent;
};
struct _ModestAttachmentsViewClass
{
- GtkTextViewClass parent_class;
+ GtkEventBoxClass parent_class;
- void (*activate) (ModestAttachmentsView *attachments_view, gint index);
+ void (*activate) (ModestAttachmentsView *attachments_view, TnyMimePart *mime_part);
+ void (*delete) (ModestAttachmentsView *attachments_view, TnyMimePart *mime_part);
};
GType modest_attachments_view_get_type (void);
GtkWidget* modest_attachments_view_new (TnyMsg *msg);
void modest_attachments_view_set_message (ModestAttachmentsView *attachments_view, TnyMsg *msg);
+void modest_attachments_view_add_attachment (ModestAttachmentsView *attachments_view, TnyMimePart *part,
+ gboolean detect_size, guint64 size);
+void modest_attachments_view_remove_attachment (ModestAttachmentsView *attachments_view, TnyMimePart *part);
+void modest_attachments_view_remove_attachment_by_id (ModestAttachmentsView *attachments_view, const gchar *att_id);
+TnyList *modest_attachments_view_get_attachments (ModestAttachmentsView *attachments_view);
+TnyList *modest_attachments_view_get_selection (ModestAttachmentsView *attachments_view);
+void modest_attachments_view_select_all (ModestAttachmentsView *attachments_view);
+
+gboolean modest_attachments_view_has_attachments (ModestAttachmentsView *attachments_view);
+
+void modest_attachments_view_get_sizes (ModestAttachmentsView *attachments_view,
+ gint *attachments_count,
+ guint64 *attachments_size);
+void modest_attachments_view_set_style (ModestAttachmentsView *attachments_view,
+ ModestAttachmentsViewStyle style);
+guint modest_attachments_view_get_num_attachments (ModestAttachmentsView *atts_view);
G_END_DECLS
#endif