## NADataBoxed NADataBoxed — The Data Factory Element Class Definition |

## Synopsis

    #include <nautilus-actions/na-data-boxed.h>

    #define             NA_TYPE_DATA_BOXED
    #define             NA_DATA_BOXED                       (object)
    #define             NA_IS_DATA_BOXED                    (object)
                        NADataBoxed;
    NADataBoxed *       na_data_boxed_new                   (const NADataDef *def);
    const NADataDef *   na_data_boxed_get_data_def          (const NADataBoxed *boxed);
    GParamSpec *        na_data_boxed_get_param_spec        (const NADataDef *def);
    gboolean            na_data_boxed_are_equal             (const NADataBoxed *a,
                                                             const NADataBoxed *b);
    gboolean            na_data_boxed_is_default            (const NADataBoxed *boxed);
    gboolean            na_data_boxed_is_valid              (const NADataBoxed *boxed);
    void                na_data_boxed_dump                  (const NADataBoxed *boxed);
    void                na_data_boxed_set_data_def          (NADataBoxed *boxed,
                                                             const NADataDef *def);
    gchar *             na_data_boxed_get_as_string         (const NADataBoxed *boxed);
    void *              na_data_boxed_get_as_void           (const NADataBoxed *boxed);
    void                na_data_boxed_get_as_value          (const NADataBoxed *boxed,
                                                             GValue *value);
    void                na_data_boxed_set_from_boxed        (NADataBoxed *boxed,
                                                             const NADataBoxed *value);
    void                na_data_boxed_set_from_string       (NADataBoxed *boxed,
                                                             const gchar *value);
    void                na_data_boxed_set_from_value        (NADataBoxed *boxed,
                                                             const GValue *value);
    void                na_data_boxed_set_from_void         (NADataBoxed *boxed,
                                                             const void *value);

## Object Hierarchy

      GObject
       +----NABoxed
             +----NADataBoxed

## Description

The object which encapsulates an elementary data of NAIFactoryObject. A NADataBoxed object has a type and a value.

NADataBoxed class is derived from NABoxed one, and implements the same types that those defined in na-data-types.h.

Additionally, NADataBoxed class holds the NADataDef data definition suitable for a NAFactoryObject object. It such provides default value and validity status.

## Details

### NA_TYPE_DATA_BOXED

    #define NA_TYPE_DATA_BOXED                ( na_data_boxed_get_type())

### NA_DATA_BOXED()

    #define NA_DATA_BOXED( object )           ( G_TYPE_CHECK_INSTANCE_CAST( object, NA_TYPE_DATA_BOXED, NADataBoxed ))

### NA_IS_DATA_BOXED()

    #define NA_IS_DATA_BOXED( object )        ( G_TYPE_CHECK_INSTANCE_TYPE( object, NA_TYPE_DATA_BOXED ))

### NADataBoxed

    typedef struct _NADataBoxed NADataBoxed;

### na_data_boxed_new ()

    NADataBoxed *       na_data_boxed_new                   (const NADataDef *def);

`def` : | the NADataDef definition structure for this boxed.
Returns : | a newly allocated NADataBoxed.

Since 2.30

### na_data_boxed_get_data_def ()

    const NADataDef *   na_data_boxed_get_data_def          (const NADataBoxed *boxed);

`boxed` : | this NADataBoxed object.
Returns : | a pointer to the NADataDef structure attached to the object. Should never be `NULL`.

Since 2.30

### na_data_boxed_get_param_spec ()

    GParamSpec *        na_data_boxed_get_param_spec        (const NADataDef *def);

`def` : | a NADataDef definition structure.
Returns : | a GParamSpec structure.

Since 2.30

### na_data_boxed_are_equal ()

    gboolean            na_data_boxed_are_equal             (const NADataBoxed *a,
                                                             const NADataBoxed *b);

### Warning

`na_data_boxed_are_equal` has been deprecated since version 3.1 and should not be used in newly-written code. Use `na_boxed_are_equal()` instead.

`a` : | the first NADataBoxed object.
`b` : | the second NADataBoxed object.
Returns : | `TRUE` if the two boxeds are equal, `FALSE` else.

Since 2.30

### na_data_boxed_is_default ()

    gboolean            na_data_boxed_is_default            (const NADataBoxed *boxed);

`boxed` : | this NADataBoxed object.
Returns : | `TRUE` if the NADataBoxed holds its default value, `FALSE` else.

Since 2.30

### na_data_boxed_is_valid ()

    gboolean            na_data_boxed_is_valid              (const NADataBoxed *boxed);

`boxed` : | the NADataBoxed object whose validity is to be checked.
Returns : | `TRUE` if the boxed is valid, `FALSE` else.

Since 2.30

### na_data_boxed_dump ()

    void                na_data_boxed_dump                  (const NADataBoxed *boxed);

### Warning

`na_data_boxed_dump` has been deprecated since version 3.1 and should not be used in newly-written code. Use `na_boxed_dump()` instead.

Dump the content of `boxed`.

`boxed` : | this NADataBoxed object.

Since 2.30

### na_data_boxed_set_data_def ()

    void                na_data_boxed_set_data_def          (NADataBoxed *boxed,
                                                             const NADataDef *def);

Changes the NADataDef a `boxed` points to: -> the new type must be the same that the previous one. -> value is unchanged.

`boxed` : | this NADataBoxed object.
`def` : | the new NADataDef to be set.

Since 2.30

### na_data_boxed_get_as_string ()

    gchar *             na_data_boxed_get_as_string         (const NADataBoxed *boxed);

### Warning

`na_data_boxed_get_as_string` has been deprecated since version 3.1 and should not be used in newly-written code. Use `na_boxed_get_string()` instead.

`boxed` : | the NADataBoxed whose value is to be set.
Returns : | the value of the `boxed`, as a newly allocated string which should be `g_free()` by the caller.

Since 2.30

### na_data_boxed_get_as_void ()

    void *              na_data_boxed_get_as_void           (const NADataBoxed *boxed);

### Warning

`na_data_boxed_get_as_void` has been deprecated since version 3.1 and should not be used in newly-written code. Use `na_boxed_get_as_void()` instead.

`boxed` : | the NADataBoxed whose value is to be set.
Returns : | the content of the `boxed`. If of type NAFD_TYPE_STRING, NAFD_TYPE_LOCALE_STRING OR NAFD_TYPE_STRING_LIST, then the content is returned in a newly allocated value, which should be released by the caller.

Since 2.30

### na_data_boxed_get_as_value ()

    void                na_data_boxed_get_as_value          (const NADataBoxed *boxed,
                                                             GValue *value);

### Warning

`na_data_boxed_get_as_value` has been deprecated since version 3.1 and should not be used in newly-written code. Use `na_boxed_get_as_value()` instead.

Setup `value` with the content of the `boxed`.

`boxed` : | the NADataBoxed whose value is to be set.
`value` : | the string to be set.

Since 2.30

### na_data_boxed_set_from_boxed ()

    void                na_data_boxed_set_from_boxed        (NADataBoxed *boxed,
                                                             const NADataBoxed *value);

### Warning

`na_data_boxed_set_from_boxed` has been deprecated since version 3.1 and should not be used in newly-written code. Use `na_boxed_set_from_boxed()` instead.

Copy value from `value` to `boxed`.

`boxed` : | the NADataBoxed whose value is to be set.
`value` : | the source NADataBoxed.

Since 2.30

### na_data_boxed_set_from_string ()

    void                na_data_boxed_set_from_string       (NADataBoxed *boxed,
                                                             const gchar *value);

### Warning

`na_data_boxed_set_from_string` has been deprecated since version 3.1 and should not be used in newly-written code. Use `na_boxed_set_from_string()` instead.

Evaluates the `value` and set it to the `boxed`.

`boxed` : | the NADataBoxed whose value is to be set.
`value` : | the string to be set.

Since 2.30

### na_data_boxed_set_from_value ()

    void                na_data_boxed_set_from_value        (NADataBoxed *boxed,
                                                             const GValue *value);

### Warning

`na_data_boxed_set_from_value` has been deprecated since version 3.1 and should not be used in newly-written code. Use `na_boxed_set_from_value()` instead.

Evaluates the `value` and set it to the `boxed`.

`boxed` : | the NADataBoxed whose value is to be set.
`value` : | the value whose content is to be got.

Since 2.30

### na_data_boxed_set_from_void ()

    void                na_data_boxed_set_from_void         (NADataBoxed *boxed,
                                                             const void *value);

### Warning

`na_data_boxed_set_from_void` has been deprecated since version 3.1 and should not be used in newly-written code. Use `na_boxed_set_from_void()` instead.

Evaluates the `value` and set it to the `boxed`.

`boxed` : | the NADataBoxed whose value is to be set.
`value` : | the value whose content is to be got.

Since 2.30