## ESourceMailComposition

ESourceMailComposition — ESource extension for mail composition settings

## Functions

gchar ** | e_source_mail_composition_dup_bcc ()
void | e_source_mail_composition_set_bcc ()
gchar ** | e_source_mail_composition_dup_cc ()
void | e_source_mail_composition_set_cc ()
const gchar * | e_source_mail_composition_get_drafts_folder ()
gchar * | e_source_mail_composition_dup_drafts_folder ()
void | e_source_mail_composition_set_drafts_folder ()
gboolean | e_source_mail_composition_get_sign_imip ()
void | e_source_mail_composition_set_sign_imip ()
const gchar * | e_source_mail_composition_get_templates_folder ()
gchar * | e_source_mail_composition_dup_templates_folder ()
void | e_source_mail_composition_set_templates_folder ()
ESourceMailCompositionReplyStyle | e_source_mail_composition_get_reply_style ()
void | e_source_mail_composition_set_reply_style ()
EThreeState | e_source_mail_composition_get_start_bottom ()
void | e_source_mail_composition_set_start_bottom ()
EThreeState | e_source_mail_composition_get_top_signature ()
void | e_source_mail_composition_set_top_signature ()
const gchar * | e_source_mail_composition_get_language ()
gchar * | e_source_mail_composition_dup_language ()
void | e_source_mail_composition_set_language ()

## Types and Values

#define | E_SOURCE_EXTENSION_MAIL_COMPOSITION
struct | ESourceMailComposition

## Object Hierarchy

        GObject
        ╰── ESourceExtension
            ╰── ESourceMailComposition

## Includes

    #include <libedataserver/libedataserver.h>

## Description

The ESourceMailComposition extension tracks settings to be applied when composing a new mail message.

Access the extension as follows:

    1
    2
    3
    4
    5

    #include <libedataserver/libedataserver.h>

    ESourceMailComposition *extension;

    extension = e_source_get_extension (source, E_SOURCE_EXTENSION_MAIL_COMPOSITION);

## Functions

### e_source_mail_composition_dup_bcc ()

    gchar **
    e_source_mail_composition_dup_bcc (ESourceMailComposition *extension);

Thread-safe variation of `e_source_mail_composition_get_bcc()`. Use this function when accessing `extension` from multiple threads.

The returned string array should be freed with `g_strfreev()` when no longer needed.

#### Parameters

extension | an ESourceMailComposition |

#### Returns

a newly-allocated copy of “bcc”.

[transfer full]

Since: 3.6

### e_source_mail_composition_set_bcc ()

    void
    e_source_mail_composition_set_bcc (ESourceMailComposition *extension,
                                       const gchar * const *bcc);

Sets the recipients which should automatically be added to the blind carbon-copy (Bcc) list when composing a new mail message. The recipient strings should be of the form "Full Name <email-address>".

#### Parameters

extension | an ESource |
bcc | a `NULL`-terminated string array of Bcc recipients. | [array zero-terminated=1]

Since: 3.6

### e_source_mail_composition_dup_cc ()

    gchar **
    e_source_mail_composition_dup_cc (ESourceMailComposition *extension);

Thread-safe variation of `e_source_mail_composition_get_cc()`. Use this function when accessing `extension` from multiple threads.

The returned string array should be freed with `g_strfreev()` when no longer needed.

#### Parameters

extension | an ESourceMailComposition |

#### Returns

a newly-allocated copy of “cc”.

[transfer full]

Since: 3.6

### e_source_mail_composition_set_cc ()

    void
    e_source_mail_composition_set_cc (ESourceMailComposition *extension,
                                      const gchar * const *cc);

Sets the recipients which should automatically be added to the carbon copy (Cc) list when composing a new mail message. The recipient strings should be of the form "Full Name <email-address>".

#### Parameters

extension | an ESourceMailComposition |
cc | a `NULL`-terminated string array of Cc recipients. | [array zero-terminated=1]

Since: 3.6

### e_source_mail_composition_get_drafts_folder ()

    const gchar *
    e_source_mail_composition_get_drafts_folder
                                   (ESourceMailComposition *extension);

Returns a string identifying the preferred folder for draft messages. The format of the identifier string is defined by the client application.

#### Parameters

extension | an ESourceMailComposition |

#### Returns

an identifier for the preferred drafts folder.

[nullable]

Since: 3.6

### e_source_mail_composition_dup_drafts_folder ()

    gchar *
    e_source_mail_composition_dup_drafts_folder
                                   (ESourceMailComposition *extension);

Thread-safe variation of `e_source_mail_composition_get_drafts_folder()`. Use this function when accessing `extension` from multiple threads.

The returned string should be freed with `g_free()` when no longer needed.

#### Parameters

extension | an ESourceMailComposition |

#### Returns

a newly-allocated copy of “drafts-folder”.

[nullable]

Since: 3.6

### e_source_mail_composition_set_drafts_folder ()

    void
    e_source_mail_composition_set_drafts_folder
                                   (ESourceMailComposition *extension,
                                    const gchar *drafts_folder);

Sets the preferred folder for draft messages by an identifier string. The format of the identifier string is defined by the client application.

The internal copy of `drafts_folder` is automatically stripped of leading and trailing whitespace. If the resulting string is empty, `NULL` is set instead.

#### Parameters

extension | an ESourceMailComposition |
drafts_folder | an identifier for the preferred drafts folder, or `NULL`. | [nullable]

Since: 3.6

### e_source_mail_composition_get_sign_imip ()

    gboolean
    e_source_mail_composition_get_sign_imip
                                   (ESourceMailComposition *extension);

Returns whether outgoing iMIP messages such as meeting requests should also be signed. This is primarily intended as a workaround for certain versions of Microsoft Outlook which can't handle signed iMIP messages.

#### Parameters

extension | an ESourceMailComposition |

#### Returns

whether outgoing iMIP messages should be signed

Since: 3.6

### e_source_mail_composition_set_sign_imip ()

    void
    e_source_mail_composition_set_sign_imip
                                   (ESourceMailComposition *extension,
                                    gboolean sign_imip);

Sets whether outgoing iMIP messages such as meeting requests should also be signed. This is primarily intended as a workaround for certain versions of Microsoft Outlook which can't handle signed iMIP messages.

#### Parameters

extension | an ESourceMailComposition |
sign_imip | whether outgoing iMIP messages should be signed |

Since: 3.6

### e_source_mail_composition_get_templates_folder ()

    const gchar *
    e_source_mail_composition_get_templates_folder
                                   (ESourceMailComposition *extension);

Returns a string identifying the preferred folder for message templates. The format of the identifier string is defined by the client application.

#### Parameters

extension | an ESourceMailComposition |

#### Returns

an identifier for the preferred templates folder.

[nullable]

Since: 3.6

### e_source_mail_composition_dup_templates_folder ()

    gchar *
    e_source_mail_composition_dup_templates_folder
                                   (ESourceMailComposition *extension);

Thread-safe variation of `e_source_mail_composition_get_templates_folder()`. Use this function when accessing `extension` from multiple threads.

The returned string should be freed with `g_free()` when no longer needed.

#### Parameters

extension | an ESourceMailComposition |

#### Returns

a newly-allocated copy of “templates-folder”.

[nullable]

Since: 3.6

### e_source_mail_composition_set_templates_folder ()

    void
    e_source_mail_composition_set_templates_folder
                                   (ESourceMailComposition *extension,
                                    const gchar *templates_folder);

Sets the preferred folder for message templates by an identifier string. The format of the identifier string is defined by the client application.

The internal copy of `templates_folder` is automatically stripped of leading and trailing whitespace. If the resulting string is empty, `NULL` is set instead.

#### Parameters

extension | an ESourceMailComposition |
templates_folder | an identifier for the preferred templates folder, or `NULL`. | [nullable]

Since: 3.6

### e_source_mail_composition_get_reply_style ()

    ESourceMailCompositionReplyStyle
    e_source_mail_composition_get_reply_style
                                   (ESourceMailComposition *extension);

Returns preferred reply style to be used when replying using the associated account. If no preference is set, the `E_SOURCE_MAIL_COMPOSITION_REPLY_STYLE_DEFAULT` is returned.

#### Parameters

extension | an ESourceMailComposition |

#### Returns

reply style preference

Since: 3.20

### e_source_mail_composition_set_reply_style ()

    void
    e_source_mail_composition_set_reply_style
                                   (ESourceMailComposition *extension,
                                    ESourceMailCompositionReplyStyle reply_style);

Sets preferred reply style to be used when replying using the associated account. To unset the preference, use the `E_SOURCE_MAIL_COMPOSITION_REPLY_STYLE_DEFAULT`.

#### Parameters

extension | an ESourceMailComposition |
reply_style | an ESourceMailCompositionReplyStyle |

Since: 3.20

### e_source_mail_composition_get_start_bottom ()

    EThreeState
    e_source_mail_composition_get_start_bottom
                                   (ESourceMailComposition *extension);

Returns whether start at bottom when replying or forwarding using the associated account. If no preference is set, the `E_THREE_STATE_INCONSISTENT` is returned.

#### Parameters

extension | an ESourceMailComposition |

#### Returns

start bottom on reply or forward preference

Since: 3.26

### e_source_mail_composition_set_start_bottom ()

    void
    e_source_mail_composition_set_start_bottom
                                   (ESourceMailComposition *extension,
                                    EThreeState start_bottom);

Sets whether start bottom when replying or forwarding using the associated account. To unset the preference, use the `E_THREE_STATE_INCONSISTENT`.

#### Parameters

extension | an ESourceMailComposition |
start_bottom | an EThreeState |

Since: 3.26

### e_source_mail_composition_get_top_signature ()

    EThreeState
    e_source_mail_composition_get_top_signature
                                   (ESourceMailComposition *extension);

Returns whether place signature at top when replying or forwarding using the associated account. If no preference is set, the `E_THREE_STATE_INCONSISTENT` is returned.

#### Parameters

extension | an ESourceMailComposition |

#### Returns

top signature on reply or forward preference

Since: 3.26

### e_source_mail_composition_set_top_signature ()

    void
    e_source_mail_composition_set_top_signature
                                   (ESourceMailComposition *extension,
                                    EThreeState top_signature);

Sets whether place signature at top when replying or forwarding using the associated account. To unset the preference, use the `E_THREE_STATE_INCONSISTENT`.

#### Parameters

extension | an ESourceMailComposition |
top_signature | an EThreeState |

Since: 3.26

### e_source_mail_composition_get_language ()

    const gchar *
    e_source_mail_composition_get_language
                                   (ESourceMailComposition *extension);

Returns a string identifying the preferred language, like "en_US".

#### Parameters

extension | an ESourceMailComposition |

#### Returns

an identifier for the preferred language, or `NULL` for none.

[nullable]

Since: 3.32

### e_source_mail_composition_dup_language ()

    gchar *
    e_source_mail_composition_dup_language
                                   (ESourceMailComposition *extension);

Thread-safe variation of `e_source_mail_composition_get_language()`. Use this function when accessing `extension` from multiple threads.

The returned string should be freed with `g_free()` when no longer needed.

#### Parameters

extension | an ESourceMailComposition |

#### Returns

a newly-allocated copy of “language”.

[nullable]

Since: 3.32

### e_source_mail_composition_set_language ()

    void
    e_source_mail_composition_set_language
                                   (ESourceMailComposition *extension,
                                    const gchar *language);

Sets the preferred language by an identifier string, like "en_US". Use `NULL` to unset any previous value.

The internal copy of `language` is automatically stripped of leading and trailing whitespace. If the resulting string is empty, `NULL` is set instead.

#### Parameters

extension | an ESourceMailComposition |
language | an identifier for the preferred language, or `NULL`. | [nullable]

Since: 3.32

## Types and Values

### E_SOURCE_EXTENSION_MAIL_COMPOSITION

    #define E_SOURCE_EXTENSION_MAIL_COMPOSITION "Mail Composition"

Pass this extension name to `e_source_get_extension()` to access ESourceMailComposition. This is also used as a group name in key files.

Since: 3.6

### struct ESourceMailComposition

    struct ESourceMailComposition;

Contains only private data that should be read and manipulated using the functions below.

Since: 3.6