1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
/* -*- Mode: IDL; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
/*
* Evolution-Composer.idl: Mail composer interfaces for Evolution
*
* Author:
* Dan Winship <danw@helixcode.com>
*
* (C) 2000 Helix Code, Inc.
*/
#include <Bonobo.idl>
module Evolution {
interface Composer : Bonobo::Unknown {
struct Recipient {
string name; /* UTF-8 */
string address;
};
typedef sequence<Recipient> RecipientList;
/**
* set_headers:
* @to: the "To" recipients
* @cc: the "CC" recipients
* @bcc: the "Bcc" recipients
* @subject: the subject of the message
*
* Sets the composer headers. Any of @to, @cc, and
* @bcc may be an empty list, and @subject may be an
* empty string.
**/
void set_headers (in RecipientList to, in RecipientList cc,
in RecipientList bcc, in string subject);
/**
* set_body_text:
* @body: the body
*
* Sets the text in the body of the composer to
* the given UTF-8 plain text.
**/
void set_body_text (in string body);
/**
* attach_MIME:
* @data: the attachment data
*
* This adds an attachment to the composer. @data
* should be a fully-formed MIME body part.
**/
exception CouldNotParse {};
void attach_MIME (in string data)
raises (CouldNotParse);
/**
* attach_data:
* @content_type: the Content-Type header
* @filename: the suggested filename, or ""
* @description: a description of the data, or ""
* @show_inline: whether the attachment should be
* displayed inline or not.
* @data: the raw attachment data
*
* This adds @data as an attachment, using the provided
* information to generate MIME headers. @content_type
* may contain just a MIME content type, or it may
* contain a complete Content-Type header. @filename
* is a filename for the Content-Disposition header
* @description (if not "") provides the
* Content-Description, and @show_inline determines if the
* Content-Disposition is "inline" or "attachment".
*
* If you need to specify headers or values other than
* what this function can do, you will need to generate
* all of the MIME headers yourself and use
* add_attachment ().
**/
void attach_data (in string content_type,
in string filename,
in string description,
in boolean show_inline,
in string data);
/**
* show:
*
* Shows the composer and lets the user edit things
* and send the message.
**/
void show ();
};
};
|