## ESourceMailSubmission ESourceMailSubmission — ESource extension for submitting emails |

## Functions

const gchar * | e_source_mail_submission_get_sent_folder ()
gchar * | e_source_mail_submission_dup_sent_folder ()
void | e_source_mail_submission_set_sent_folder ()
gboolean | e_source_mail_submission_get_use_sent_folder ()
void | e_source_mail_submission_set_use_sent_folder ()
const gchar * | e_source_mail_submission_get_transport_uid ()
gchar * | e_source_mail_submission_dup_transport_uid ()
void | e_source_mail_submission_set_transport_uid ()
gboolean | e_source_mail_submission_get_replies_to_origin_folder ()
void | e_source_mail_submission_set_replies_to_origin_folder ()

## Types and Values

#define | E_SOURCE_EXTENSION_MAIL_SUBMISSION
struct | ESourceMailSubmission

## Object Hierarchy

        GObject
        ╰── ESourceExtension
            ╰── ESourceMailSubmission

## Includes

    #include <libedataserver/libedataserver.h>

## Description

The ESourceMailSubmission extension tracks settings to be applied when submitting a mail message for delivery.

Access the extension as follows:

    1
    2
    3
    4
    5
    #include <libedataserver/libedataserver.h>

    ESourceMailSubmission *extension;

    extension = e_source_get_extension (source, E_SOURCE_EXTENSION_MAIL_SUBMISSION);

## Functions

### e_source_mail_submission_get_sent_folder ()

    const gchar *
    e_source_mail_submission_get_sent_folder
                                   (ESourceMailSubmission *extension);

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

#### Parameters

extension | an ESourceMailSubmission |

#### Returns

an identifier for the preferred sent folder.

[nullable]

Since: 3.6

### e_source_mail_submission_dup_sent_folder ()

    gchar *
    e_source_mail_submission_dup_sent_folder
                                   (ESourceMailSubmission *extension);

Thread-safe variation of `e_source_mail_submission_get_sent_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 ESourceMailSubmission |

#### Returns

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

[nullable]

Since: 3.6

### e_source_mail_submission_set_sent_folder ()

    void
    e_source_mail_submission_set_sent_folder
                                   (ESourceMailSubmission *extension,
                                    const gchar *sent_folder);

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

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

#### Parameters

extension | an ESourceMailSubmission |
sent_folder | an identifier for the preferred sent folder, or `NULL`. | [nullable]

Since: 3.6

### e_source_mail_submission_get_use_sent_folder ()

    gboolean
    e_source_mail_submission_get_use_sent_folder
                                   (ESourceMailSubmission *extension);

#### Parameters

extension | an ESourceMailSubmission |

#### Returns

whether save messages to the sent folder at all

Since: 3.26

### e_source_mail_submission_set_use_sent_folder ()

    void
    e_source_mail_submission_set_use_sent_folder
                                   (ESourceMailSubmission *extension,
                                    gboolean use_sent_folder);

Sets whether save messages to the sent folder at all.

#### Parameters

extension | an ESourceMailSubmission |
use_sent_folder | the value to set |

Since: 3.26

### e_source_mail_submission_get_transport_uid ()

    const gchar *
    e_source_mail_submission_get_transport_uid
                                   (ESourceMailSubmission *extension);

Returns the “uid” of the ESource that describes the mail transport to be used for outgoing messages.

#### Parameters

extension | an ESourceMailSubmission |

#### Returns

the mail transport “uid”.

[nullable]

Since: 3.6

### e_source_mail_submission_dup_transport_uid ()

    gchar *
    e_source_mail_submission_dup_transport_uid
                                   (ESourceMailSubmission *extension);

Thread-safe variation of `e_source_mail_submission_get_transport_uid()`. 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 ESourceMailSubmission |

#### Returns

a newly-allocated copy of “transport-uid”.

[nullable]

Since: 3.6

### e_source_mail_submission_set_transport_uid ()

    void
    e_source_mail_submission_set_transport_uid
                                   (ESourceMailSubmission *extension,
                                    const gchar *transport_uid);

Sets the “uid” of the ESource that describes the mail transport to be used for outgoing messages.

#### Parameters

extension | an ESourceMailSubmission |
transport_uid | the mail transport “uid”, or `NULL`. | [nullable]

Since: 3.6

### e_source_mail_submission_get_replies_to_origin_folder ()

    gboolean
    e_source_mail_submission_get_replies_to_origin_folder
                                   (ESourceMailSubmission *extension);

Returns whether save replies in the folder of the message being replied to, instead of the Sent folder.

#### Parameters

extension | an ESourceMailSubmission |

#### Returns

whether save replies in the folder of the message being replied to

Since: 3.8

### e_source_mail_submission_set_replies_to_origin_folder ()

    void
    e_source_mail_submission_set_replies_to_origin_folder
                                   (ESourceMailSubmission *extension,
                                    gboolean replies_to_origin_folder);

Sets whether save replies in the folder of the message being replied to, instead of the Sent folder.

#### Parameters

extension | an ESourceMailSubmission |
replies_to_origin_folder | new value |

Since: 3.8

## Types and Values

### E_SOURCE_EXTENSION_MAIL_SUBMISSION

    #define E_SOURCE_EXTENSION_MAIL_SUBMISSION "Mail Submission"

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

Since: 3.6

### struct ESourceMailSubmission

    struct ESourceMailSubmission;

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

Since: 3.6