## ESourceMailIdentity

ESourceMailIdentity — ESource extension for an email identity

## Synopsis

    #include <libedataserver/libedataserver.h>

    #define             E_SOURCE_EXTENSION_MAIL_IDENTITY
    struct              ESourceMailIdentity;
    struct              ESourceMailIdentityClass;
    const gchar *       e_source_mail_identity_get_address  (ESourceMailIdentity *extension);
    gchar *             e_source_mail_identity_dup_address  (ESourceMailIdentity *extension);
    void                e_source_mail_identity_set_address  (ESourceMailIdentity *extension,
                                                             const gchar *address);
    const gchar *       e_source_mail_identity_get_name     (ESourceMailIdentity *extension);
    gchar *             e_source_mail_identity_dup_name     (ESourceMailIdentity *extension);
    void                e_source_mail_identity_set_name     (ESourceMailIdentity *extension,
                                                             const gchar *name);
    const gchar *       e_source_mail_identity_get_organization
                                                            (ESourceMailIdentity *extension);
    gchar *             e_source_mail_identity_dup_organization
                                                            (ESourceMailIdentity *extension);
    void                e_source_mail_identity_set_organization
                                                            (ESourceMailIdentity *extension,
                                                             const gchar *organization);
    const gchar *       e_source_mail_identity_get_reply_to (ESourceMailIdentity *extension);
    gchar *             e_source_mail_identity_dup_reply_to (ESourceMailIdentity *extension);
    void                e_source_mail_identity_set_reply_to (ESourceMailIdentity *extension,
                                                             const gchar *reply_to);
    const gchar *       e_source_mail_identity_get_signature_uid
                                                            (ESourceMailIdentity *extension);
    gchar *             e_source_mail_identity_dup_signature_uid
                                                            (ESourceMailIdentity *extension);
    void                e_source_mail_identity_set_signature_uid
                                                            (ESourceMailIdentity *extension,
                                                             const gchar *signature_uid);

## Description

The ESourceMailIdentity extension describes an "identity" for a mail account, which is the information that other people see when they read your messages.

Access the extension as follows:

    1
    2
    3
    4
    5

    #include <libedataserver/libedataserver.h>

    ESourceMailIdentity *extension;

    extension = e_source_get_extension (source, E_SOURCE_EXTENSION_MAIL_IDENTITY);

## Details

### E_SOURCE_EXTENSION_MAIL_IDENTITY

    #define E_SOURCE_EXTENSION_MAIL_IDENTITY "Mail Identity"

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

Since 3.6

### struct ESourceMailIdentity

    struct ESourceMailIdentity {
    	ESourceExtension parent;
    	ESourceMailIdentityPrivate *priv;
    };

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

Since 3.6

### struct ESourceMailIdentityClass

    struct ESourceMailIdentityClass {
    	ESourceExtensionClass parent_class;
    };

### e_source_mail_identity_get_address ()

    const gchar *       e_source_mail_identity_get_address  (ESourceMailIdentity *extension);

Returns the email address for this identity from which to send messages. This may be an empty string but will never be `NULL`.

`extension` : | an ESourceMailIdentity
Returns : | the sender's email address

Since 3.6

### e_source_mail_identity_dup_address ()

    gchar *             e_source_mail_identity_dup_address  (ESourceMailIdentity *extension);

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

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

`extension` : | an ESourceMailIdentity
Returns : | a newly-allocated copy of "address"

Since 3.6

### e_source_mail_identity_set_address ()

    void                e_source_mail_identity_set_address  (ESourceMailIdentity *extension,
                                                             const gchar *address);

Sets the email address for this identity from which to send messages.

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

`extension` : | an ESourceMailIdentity
`address` : | the sender's email address, or `NULL`. [allow-none]

Since 3.6

### e_source_mail_identity_get_name ()

    const gchar *       e_source_mail_identity_get_name     (ESourceMailIdentity *extension);

Returns the sender's name for this identity.

`extension` : | an ESourceMailIdentity
Returns : | the sender's name

Since 3.6

### e_source_mail_identity_dup_name ()

    gchar *             e_source_mail_identity_dup_name     (ESourceMailIdentity *extension);

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

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

`extension` : | an ESourceMailIdentity
Returns : | a newly-allocated copy of "name"

Since 3.6

### e_source_mail_identity_set_name ()

    void                e_source_mail_identity_set_name     (ESourceMailIdentity *extension,
                                                             const gchar *name);

Sets the sender's name for this identity.

The internal copy of `name` is automatically stripped of leading and trailing whitespace. If `name` is `NULL` or the resulting string is empty, the result of `g_get_real_name()` is set instead.

`extension` : | an ESourceMailIdentity
`name` : | the sender's name, or `NULL`. [allow-none]

Since 3.6

### e_source_mail_identity_get_organization ()

    const gchar *       e_source_mail_identity_get_organization
                                                            (ESourceMailIdentity *extension);

Returns the sender's organization for this identity.

`extension` : | an ESourceMailIdentity
Returns : | the sender's organization

Since 3.6

### e_source_mail_identity_dup_organization ()

    gchar *             e_source_mail_identity_dup_organization
                                                            (ESourceMailIdentity *extension);

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

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

`extension` : | an ESourceMailIdentity
Returns : | a newly-allocated copy of "organization"

Since 3.6

### e_source_mail_identity_set_organization ()

    void                e_source_mail_identity_set_organization
                                                            (ESourceMailIdentity *extension,
                                                             const gchar *organization);

Sets the sender's organization for this identity.

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

`extension` : | an ESourceMailIdentity
`organization` : | the sender's organization, or `NULL`. [allow-none]

Since 3.6

### e_source_mail_identity_get_reply_to ()

    const gchar *       e_source_mail_identity_get_reply_to (ESourceMailIdentity *extension);

Returns the email address for this identity to which recipients should send replies.

`extension` : | an ESourceMailIdentity
Returns : | the sender's reply-to address

Since 3.6

### e_source_mail_identity_dup_reply_to ()

    gchar *             e_source_mail_identity_dup_reply_to (ESourceMailIdentity *extension);

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

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

`extension` : | an ESourceMailIdentity
Returns : | a newly-allocated copy of "reply-to"

Since 3.6

### e_source_mail_identity_set_reply_to ()

    void                e_source_mail_identity_set_reply_to (ESourceMailIdentity *extension,
                                                             const gchar *reply_to);

Sets the email address for this identity to which recipients should send replies.

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

`extension` : | an ESourceMailIdentity
`reply_to` : | the sender's reply-to address, or `NULL`. [allow-none]

Since 3.6

### e_source_mail_identity_get_signature_uid ()

    const gchar *       e_source_mail_identity_get_signature_uid
                                                            (ESourceMailIdentity *extension);

Returns the "uid" of an ESource describing a mail signature.

If the user does not want to use a signature for this identity, the convention is to set the "signature-uid" property to "none".

`extension` : | an ESourceMailIdentity
Returns : | the sender's signature ID, or "none"

Since 3.6

### e_source_mail_identity_dup_signature_uid ()

    gchar *             e_source_mail_identity_dup_signature_uid
                                                            (ESourceMailIdentity *extension);

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

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

`extension` : | an ESourceMailIdentity
Returns : | a newly-allocated copy of "signature-uid"

Since 3.6

### e_source_mail_identity_set_signature_uid ()

    void                e_source_mail_identity_set_signature_uid
                                                            (ESourceMailIdentity *extension,
                                                             const gchar *signature_uid);

Sets the "uid" of an ESource describing a mail signature.

If the user does not want to use a signature for this identity, the convention is to set the "signature-uid" property to "none". In keeping with that convention, the property will be set to "none" if `signature` is `NULL` or an empty string.

`extension` : | an ESourceMailIdentity
`signature_uid` : | the sender's signature ID, or `NULL`. [allow-none]

Since 3.6