## e-split-date-edit e-split-date-edit — edit date split into respective parts |

## Functions

GtkWidget * | e_split_date_edit_new ()
void | e_split_date_edit_set_format ()
const gchar * | e_split_date_edit_get_format ()
void | e_split_date_edit_set_ymd ()
void | e_split_date_edit_get_ymd ()

## Signals

void | changed | Run First

## Types and Values

#define | E_TYPE_SPLIT_DATE_EDIT
| ESplitDateEdit

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GtkWidget
                ╰── GtkContainer
                    ╰── GtkGrid
                        ╰── ESplitDateEdit

## Implemented Interfaces

ESplitDateEdit implements AtkImplementorIface, GtkBuildable and GtkOrientable.

## Includes

    #include <e-util/e-util.h>

## Description

The ESplitDateEdit allows to edit date with each part split. Either of the year, month and day parts can be unset, which is recognized by using a zero value for that part.

## Functions

### e_split_date_edit_new ()

    GtkWidget *
    e_split_date_edit_new (void);

Creates a new ESplitDateEdit.

#### Returns

a new ESplitDateEdit.

[transfer full]

Since: 3.60

### e_split_date_edit_set_format ()

    void
    e_split_date_edit_set_format (ESplitDateEdit *self,
                                  const gchar *format);

Sets the date format to be used to place the year, month and day widgets in the given order. The format is expected to be as for the strftime. Parts which cannot be recognized in the string are added at the end in an order year, month and then day. When a `NULL` `format` is used, the actual format is tried to be recognized from the current locale.

#### Parameters

self | an ESplitDateEdit |
format | a date format to use, or `NULL` to unset. | [nullable]

Since: 3.60

### e_split_date_edit_get_format ()

    const gchar *
    e_split_date_edit_get_format (ESplitDateEdit *self);

Returns previously set format for the parts order by the `e_split_date_edit_set_format()`. The `NULL` means to use the format from the current locale.

#### Parameters

self | an ESplitDateEdit |

#### Returns

previously set format by the `e_split_date_edit_set_format()`

Since: 3.60

### e_split_date_edit_set_ymd ()

    void
    e_split_date_edit_set_ymd (ESplitDateEdit *self,
                               guint year,
                               guint month,
                               guint day);

Sets the date shown in the `self` . Either of the parts can be zero (or otherwise out of bounds) to indicate that part is not set.

#### Parameters

self | an ESplitDateEdit |
year | year part of the date |
month | month part of the date |
day | day part of the date |

Since: 3.60

### e_split_date_edit_get_ymd ()

    void
    e_split_date_edit_get_ymd (ESplitDateEdit *self,
                               guint *out_year,
                               guint *out_month,
                               guint *out_day);

Returns the current set date in the `self` . The unset parts have set zero as their value.

#### Parameters

self | an ESplitDateEdit |
out_year | return location for the year part. | [out]
out_month | return location for the month part. | [out]
out_day | return location for the day part. | [out]

Since: 3.60

## Types and Values

### E_TYPE_SPLIT_DATE_EDIT

    #define E_TYPE_SPLIT_DATE_EDIT (e_split_date_edit_get_type ())

### ESplitDateEdit

    typedef struct _ESplitDateEdit ESplitDateEdit;

## Signal Details

### The `“changed”` signal

    void
    user_function (ESplitDateEdit *esplitdateedit,
                   gpointer        user_data)

Flags: Run First