001-12-11 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer-attachment.c (e_msg_composer_attachment_edit):
Attach to the parent widget's destroy signal - when that gets
destroyed, we need to cancel the editor dialog too. Also connect
to our parent window's "hide" signal so that when the composer
gets hidden (ie, it's being sent), we also close the dialogs.
* e-msg-composer.c (init): Default composer->enable_autosave to
TRUE.
svn path=/trunk/; revision=15016
2001-12-10 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer-attachment-bar.c (add_from_user):
select_file_attachments now returns a GPtrArray so handle that and
loop until we've added all the attachment files.
* e-msg-composer-select-file.c (confirm): Add an evil kludge to
get a list of filenames from the GtkFileSelection widget based on
the label in the history option menu item and the base filenames
of the selected items in the filename clist.
(create_file_selection): Setup the clist to allow multiple
selection.
(file_selection_info_destroy_notify): Destroy the GPtrArray
containing the list of xselected files.
(select_file_internal): Return a GPtrArray of files instead of a
char *.
svn path=/trunk/; revision=14968
attachments. Also, I think this should make replies to HTML
messages containing inline images referenced via Content-Location
work, but that's not tested.
* e-msg-composer.c (various): Keep two hash tables of inline image
data: one mapping from cid: URLs to CamelMimeParts for all
attachments, the other mapping from file: and Content-Location
urls to CamelMimeParts (for those inline images that came from a
file or have a Content-Location).
(add_inlined_images): Simplify. Most of this code is in
e_msg_composer_add_inline_image_from_file() now.
(e_msg_composer_add_message_attachments, handle_multipart): Change
"attach_all" arg to "just_inlines". If it is set, call
e_msg_composer_add_inline_image_from_mime_part on any attachment
with a Content-Id or Content-Location.
(e_msg_composer_add_inline_image_from_file): Create a mime part
from a file and add it to the inline images hash.
(e_msg_composer_add_inline_image_from_mime_part): Add a mime part
directly to the inline images hash.
* listener.c (resolve_image_url): If asked to resolve a file: URL
that isn't in the inline images hash, call
e_msg_composer_add_inline_image_from_file to get a cid for it.
(impl_event): Look up the URL in the inline_images and
inline_images_by_url hashes.
* e-msg-composer-attachment-bar.c
(e_msg_composer_attachment_bar_find_message): Gone. No longer
used.
svn path=/trunk/; revision=13852
2001-10-18 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer.c (best_encoding): Don't use a
g_return_val_if_fail after iconv_open, this is a valid error
condition and so should use check it for real.
* e-msg-composer-attachment-bar.c (attach_to_multipart): Correctly
set the charset parameter and use camel's bestenc filter to
determine which content transfer encoding to use.
svn path=/trunk/; revision=13784
2001-10-09 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer-attachment-bar.c (add_from_file): If the
attachment fails, report the error to the user.
* e-msg-composer-attachment.c (e_msg_composer_attachment_new): Now
takes a CamelException argument.
svn path=/trunk/; revision=13537
2001-10-05 Larry Ewing <lewing@ximian.com>
* e-msg-composer-attachment.c (e_msg_composer_attachment_new):
remove unused variable.
* e-msg-composer-attachment-bar.c
(e_msg_composer_attachment_bar_find_message): generalize this to
lookup content locations as well.
* e-msg-composer-attachment-bar.h: change prototype to match the
new function.
* listener.c (impl_event): handle the url_requested event, look up
parts in the attachment part and feed them down the stream if it
is found.
* e-msg-composer.c (handle_multipart_alternative): delay setting
the body text.
(handle_multipart): delay setting body text
(e_msg_composer_new_with_message): set the body text from the
object data. Doing this ensures that we will have the attachments
processed before we try to look them up.
svn path=/trunk/; revision=13445
2001-10-04 Larry Ewing <lewing@ximian.com>
* e-msg-composer-attachment-bar.c
(e_msg_composer_attachment_bar_find_content_id): look up an
attachment by it's content id.
* e-msg-composer-attachment-bar.h: add prototype for
e_msg_composer_attachment_bar_find_content_id.
svn path=/trunk/; revision=13436
2001-07-02 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer-attachment-bar.c (attach_to_multipart): Set the
user-chosen charset.
* e-msg-composer.c (menu_change_charset_cb): New callback function
to get the user-set charset.
(init): Set the charset to NULL.
(best_charset): Take a default_charset param that holds the value
the user set for this particular message using the menu.
(destroy): Free the charset.
svn path=/trunk/; revision=10704
* e-msg-composer-attachment.glade: Replace the disposition option
menu with a checkbox.
* e-msg-composer-select-file.c
(e_msg_composer_select_file_attachment): New function to select a
file to attach. Adds a "suggest inline disposition" checkbox.
* e-msg-composer-attachment.c (e_msg_composer_attachment_new): Add
a disposition argument rather than always defaulting to
"attachment".
(struct _DialogData, ok_cb, e_msg_composer_attachment_edit):
Update for optionmenu->checkbox change for disposition.
* e-msg-composer-attachment-bar.c (add_from_file): Add a
disposition argument.
(add_from_user): Use e_msg_composer_select_file_attachment, pass
chosen disposition to add_from_file.
(e_msg_composer_attachment_bar_attach): Pass "attachment" to
add_from_file for the disposition.
svn path=/trunk/; revision=10200
2001-05-28 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer-attachment-bar.c (update): Use
e_utf8_to_gtk_string() on the description of the attachment since
camel stores these as utf-8 strings.
svn path=/trunk/; revision=10036
2001-02-10 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer-attachment-bar.c (attach_to_multipart):
multipart/* is another mime type we DO NOT want to encode ;-)
svn path=/trunk/; revision=8156
* e-msg-composer.c (handle_multipart_alternative,
handle_multipart, e_msg_composer_new_with_message): Use
CamelContentType instead of GMimeContentField.
* e-msg-composer-attachment.c (e_msg_composer_attachment_edit):
* e-msg-composer-attachment-bar.c (update, attach_to_multipart):
Use CamelContentType, and use the header_content_type_* functions
rather than operating on the structure by hand.
svn path=/trunk/; revision=7188
Big patch.
Evolution-services rewrite, services updated for new system, Fixes to
Executive Summary and other things. See some changelogs
svn path=/trunk/; revision=6644
2000-11-01 Jeffrey Stedfast <fejj@helixcode.com>
* e-msg-composer-attachment-bar.c (attach_to_multipart): Fix the
CTE kludge, calculate the best mime transfer encoding for the mime
part and use that. Include e-msg-composer-select-file.h
svn path=/trunk/; revision=6325
2000-10-02 Iain Holmes <iain@helixcode.com>
* e-msg-composer-attachment-bar.c: If the description of an attachment
is a blank string, revert to displaying the filename.
2000-10-01 Iain Holmes <iain@helixcode.com>
* e-icon-list.c: If you try to add an icon from a file that doesn't
exist put a "Broken icon" image.
* bad-icon.xpm: Broken icon image.
svn path=/trunk/; revision=5652
* e-msg-composer-attachment.c (get_mime_type): Use
gnome_vfs_get_file_info.
* e-msg-composer-attachment-bar.c (update): Use gnome_vfs_mime
functions, not old gnome_mime.
svn path=/trunk/; revision=5496
2000-09-12 Larry Ewing <lewing@helixcode.com>
* e-msg-composer-attachment-bar.c (add_common): add a make sure
the attachment isn't NULL. A more complete fix coming soon.
svn path=/trunk/; revision=5394
* e-msg-composer-attachment-bar.c (add_from_user): keep the
GtkFileSelection around between calls so we start up in the same
directory we ended up in last time around. (Also fixes a big
memory leak in that the code was already keeping the
GtkFileSelection around, it just wasn't remembering to reuse it.)
svn path=/trunk/; revision=3570
* e-msg-composer.c (e_msg_composer_attach): New convenience
function.
* e-msg-composer-attachment.c: Store a CamelMimePart rather than
filename/description/mime_type info. Also record whether we were
told or guessed the MIME type.
(e_msg_composer_attachment_new_from_mime_part): New constructor.
(e_msg_composer_attachment_edit): Remove the "browse" button. (If
the user wants to change the actual file that the attachment is
based on, he should delete the attachment and create a new one...)
Remove the "Apply" button, because it's not all that useful. Make
the MIME type only track the filename if it was guessed rather
than being provided.
* e-msg-composer-attachment.glade: Remove "browse" and "apply"
buttons. Make filename editable.
* e-msg-composer-attachment-bar.c (sort): Removed. Send the
attachments in the order the user attached them in.
(text_changed): Removed, since we weren't enabling the relevant
GnomeIconList functionality that would have used this.
(update): Don't print the size if it's 0.
(attach_to_multipart, etc): adjust for EMsgComposerAttachment
changes.
(attach_to_multipart): Use 7bit encoding for message/ subparts.
(e_msg_composer_attachment_bar_attach_mime_part): New convenience
function.
svn path=/trunk/; revision=3430
* e-msg-composer.c (build_message): unref content, etc. after
attaching it to message.
* e-msg-composer-attachment-bar.c (attach_to_multipart): unref
part after attaching it.
svn path=/trunk/; revision=2884
* camel-mime-body-part.[ch]: Remove. We weren't using the fields
that made this different from camel-mime-part, so it basically
just forced us to do lots of gratuitous typecasting.
* camel-multipart.[ch]: Use CamelMimePart. Remove the multipart
parent stuff, since we weren't using that either.
* etc: update for CamelMimeBodyPart -> CamelMimePart
svn path=/trunk/; revision=2645
2000-04-26 NotZed <NotZed@HelixCode.com>
* e-msg-composer.c (build_message): Use camel_mime_part_set_text()
to set the text rather than messing with data wrappers.
* e-msg-composer-attachment-bar.c (attach_to_multipart): Change
for new camel-stream interfaces.
(attach_to_multipart): Also set base64 encoding by default.
svn path=/trunk/; revision=2623
* Makefile.am: build libcomposer static and don't install it.
* e-msg-composer-attachment-bar.c (attach_to_multipart): This was
only half-implemented. Finish it, mostly.
svn path=/trunk/; revision=2561