## GDataGDIMAddress GDataGDIMAddress — GData instant messaging address element |

## Stability Level

Unstable, unless otherwise indicated

## Synopsis

    #include <gdata/gd/gdata-gd-im-address.h>

    #define             GDATA_GD_IM_ADDRESS_HOME
    #define             GDATA_GD_IM_ADDRESS_NETMEETING
    #define             GDATA_GD_IM_ADDRESS_OTHER
    #define             GDATA_GD_IM_ADDRESS_WORK
    #define             GDATA_GD_IM_PROTOCOL_AIM
    #define             GDATA_GD_IM_PROTOCOL_LIVE_MESSENGER
    #define             GDATA_GD_IM_PROTOCOL_YAHOO_MESSENGER
    #define             GDATA_GD_IM_PROTOCOL_SKYPE
    #define             GDATA_GD_IM_PROTOCOL_QQ
    #define             GDATA_GD_IM_PROTOCOL_GOOGLE_TALK
    #define             GDATA_GD_IM_PROTOCOL_ICQ
    #define             GDATA_GD_IM_PROTOCOL_JABBER
                        GDataGDIMAddress;
                        GDataGDIMAddressClass;
    GDataGDIMAddress *  gdata_gd_im_address_new             (const gchar *address,
                                                             const gchar *protocol,
                                                             const gchar *relation_type,
                                                             const gchar *label,
                                                             gboolean is_primary);
    const gchar *       gdata_gd_im_address_get_address     (GDataGDIMAddress *self);
    void                gdata_gd_im_address_set_address     (GDataGDIMAddress *self,
                                                             const gchar *address);
    const gchar *       gdata_gd_im_address_get_protocol    (GDataGDIMAddress *self);
    void                gdata_gd_im_address_set_protocol    (GDataGDIMAddress *self,
                                                             const gchar *protocol);
    const gchar *       gdata_gd_im_address_get_relation_type
                                                            (GDataGDIMAddress *self);
    void                gdata_gd_im_address_set_relation_type
                                                            (GDataGDIMAddress *self,
                                                             const gchar *relation_type);
    const gchar *       gdata_gd_im_address_get_label       (GDataGDIMAddress *self);
    void                gdata_gd_im_address_set_label       (GDataGDIMAddress *self,
                                                             const gchar *label);
    gboolean            gdata_gd_im_address_is_primary      (GDataGDIMAddress *self);
    void                gdata_gd_im_address_set_is_primary  (GDataGDIMAddress *self,
                                                             gboolean is_primary);

## Object Hierarchy

      GObject
       +----GDataParsable
             +----GDataGDIMAddress

## Implemented Interfaces

GDataGDIMAddress implements GDataComparable.

## Properties

      "address"                  gchar*                : Read / Write
      "is-primary"               gboolean              : Read / Write
      "label"                    gchar*                : Read / Write
      "protocol"                 gchar*                : Read / Write
      "relation-type"            gchar*                : Read / Write

## Description

GDataGDIMAddress represents an "im" element from the GData specification.

## Details

### GDATA_GD_IM_ADDRESS_HOME

    #define GDATA_GD_IM_ADDRESS_HOME "http://schemas.google.com/g/2005#home"

The relation type URI for a home IM address.

Since 0.7.0

### GDATA_GD_IM_ADDRESS_NETMEETING

    #define GDATA_GD_IM_ADDRESS_NETMEETING "http://schemas.google.com/g/2005#netmeeting"

The relation type URI for a Microsoft NetMeeting IM address.

Since 0.7.0

### GDATA_GD_IM_ADDRESS_OTHER

    #define GDATA_GD_IM_ADDRESS_OTHER "http://schemas.google.com/g/2005#other"

The relation type URI for a miscellaneous IM address.

Since 0.7.0

### GDATA_GD_IM_ADDRESS_WORK

    #define GDATA_GD_IM_ADDRESS_WORK "http://schemas.google.com/g/2005#work"

The relation type URI for a work IM address.

Since 0.7.0

### GDATA_GD_IM_PROTOCOL_AIM

    #define GDATA_GD_IM_PROTOCOL_AIM "http://schemas.google.com/g/2005#AIM"

The protocol type URI for an AIM IM address.

Since 0.7.0

### GDATA_GD_IM_PROTOCOL_LIVE_MESSENGER

    #define GDATA_GD_IM_PROTOCOL_LIVE_MESSENGER "http://schemas.google.com/g/2005#MSN"

The protocol type URI for an Windows Live Messenger IM address.

Since 0.7.0

### GDATA_GD_IM_PROTOCOL_YAHOO_MESSENGER

    #define GDATA_GD_IM_PROTOCOL_YAHOO_MESSENGER "http://schemas.google.com/g/2005#YAHOO"

The protocol type URI for a Yahoo! Messenger IM address.

Since 0.7.0

### GDATA_GD_IM_PROTOCOL_SKYPE

    #define GDATA_GD_IM_PROTOCOL_SKYPE "http://schemas.google.com/g/2005#SKYPE"

The protocol type URI for a Skype IM address.

Since 0.7.0

### GDATA_GD_IM_PROTOCOL_QQ

    #define GDATA_GD_IM_PROTOCOL_QQ "http://schemas.google.com/g/2005#QQ"

The protocol type URI for a QQ IM address.

Since 0.7.0

### GDATA_GD_IM_PROTOCOL_GOOGLE_TALK

    #define GDATA_GD_IM_PROTOCOL_GOOGLE_TALK "http://schemas.google.com/g/2005#GOOGLE_TALK"

The protocol type URI for a Google Talk IM address.

Since 0.7.0

### GDATA_GD_IM_PROTOCOL_ICQ

    #define GDATA_GD_IM_PROTOCOL_ICQ "http://schemas.google.com/g/2005#ICQ"

The protocol type URI for an ICQ IM address.

Since 0.7.0

### GDATA_GD_IM_PROTOCOL_JABBER

    #define GDATA_GD_IM_PROTOCOL_JABBER "http://schemas.google.com/g/2005#JABBER"

The protocol type URI for a Jabber IM address.

Since 0.7.0

### GDataGDIMAddress

    typedef struct _GDataGDIMAddress GDataGDIMAddress;

All the fields in the GDataGDIMAddress structure are private and should never be accessed directly.

Since 0.2.0

### GDataGDIMAddressClass

    typedef struct {
    } GDataGDIMAddressClass;

All the fields in the GDataGDIMAddressClass structure are private and should never be accessed directly.

Since 0.4.0

### gdata_gd_im_address_new ()

    GDataGDIMAddress *  gdata_gd_im_address_new             (const gchar *address,
                                                             const gchar *protocol,
                                                             const gchar *relation_type,
                                                             const gchar *label,
                                                             gboolean is_primary);

Creates a new GDataGDIMAddress. More information is available in the GData specification.

`address` : | the IM address
`protocol` : | a URI identifying the IM protocol, or `NULL`. [allow-none]
`relation_type` : | the relationship between the IM address and its owner, or `NULL`. [allow-none]
`label` : | a human-readable label for the IM address, or `NULL`. [allow-none]
`is_primary` : | `TRUE` if this IM address is its owner's primary address, `FALSE` otherwise
Returns : | a new GDataGDIMAddress, or `NULL`; unref with `g_object_unref()`

Since 0.2.0

### gdata_gd_im_address_get_address ()

    const gchar *       gdata_gd_im_address_get_address     (GDataGDIMAddress *self);

Gets the "address" property.

`self` : | a GDataGDIMAddress
Returns : | the IM address itself, or `NULL`

Since 0.4.0

### gdata_gd_im_address_set_address ()

    void                gdata_gd_im_address_set_address     (GDataGDIMAddress *self,
                                                             const gchar *address);

Sets the "address" property to `address`.

`self` : | a GDataGDIMAddress
`address` : | the new IM address

Since 0.4.0

### gdata_gd_im_address_get_protocol ()

    const gchar *       gdata_gd_im_address_get_protocol    (GDataGDIMAddress *self);

Gets the "protocol" property.

`self` : | a GDataGDIMAddress
Returns : | the IM address' protocol, or `NULL`

Since 0.4.0

### gdata_gd_im_address_set_protocol ()

    void                gdata_gd_im_address_set_protocol    (GDataGDIMAddress *self,
                                                             const gchar *protocol);

Sets the "protocol" property to `protocol`.

`self` : | a GDataGDIMAddress
`protocol` : | the new IM protocol, or `NULL`. [allow-none]

Since 0.4.0

### gdata_gd_im_address_get_relation_type ()

    const gchar *       gdata_gd_im_address_get_relation_type
                                                            (GDataGDIMAddress *self);

Gets the "relation-type" property.

`self` : | a GDataGDIMAddress
Returns : | the IM address' relation type, or `NULL`

Since 0.4.0

### gdata_gd_im_address_set_relation_type ()

    void                gdata_gd_im_address_set_relation_type
                                                            (GDataGDIMAddress *self,
                                                             const gchar *relation_type);

Sets the "relation-type" property to `relation_type`.

Set `relation_type` to `NULL` to unset the property in the IM address.

`self` : | a GDataGDIMAddress
`relation_type` : | the new relation type for the im_address, or `NULL`. [allow-none]

Since 0.4.0

### gdata_gd_im_address_get_label ()

    const gchar *       gdata_gd_im_address_get_label       (GDataGDIMAddress *self);

Gets the "label" property.

`self` : | a GDataGDIMAddress
Returns : | the IM address' label, or `NULL`

Since 0.4.0

### gdata_gd_im_address_set_label ()

    void                gdata_gd_im_address_set_label       (GDataGDIMAddress *self,
                                                             const gchar *label);

Sets the "label" property to `label`.

Set `label` to `NULL` to unset the property in the IM address.

`self` : | a GDataGDIMAddress
`label` : | the new label for the IM address, or `NULL`. [allow-none]

Since 0.4.0

### gdata_gd_im_address_is_primary ()

    gboolean            gdata_gd_im_address_is_primary      (GDataGDIMAddress *self);

Gets the "is-primary" property.

`self` : | a GDataGDIMAddress
Returns : | `TRUE` if this is the primary IM address, `FALSE` otherwise

Since 0.4.0

### gdata_gd_im_address_set_is_primary ()

    void                gdata_gd_im_address_set_is_primary  (GDataGDIMAddress *self,
                                                             gboolean is_primary);

Sets the "is-primary" property to `is_primary`.

`self` : | a GDataGDIMAddress
`is_primary` : | `TRUE` if this is the primary IM address, `FALSE` otherwise

Since 0.4.0

## Property Details

### The `"address"` property

      "address"                  gchar*                : Read / Write

The IM address itself.

For more information, see the GData specification.

Default value: NULL

Since 0.4.0

### The `"is-primary"` property

      "is-primary"               gboolean              : Read / Write

Indicates which IM address out of a group is primary.

For more information, see the GData specification.

Default value: FALSE

Since 0.4.0

### The `"label"` property

      "label"                    gchar*                : Read / Write

A simple string value used to name this IM address. It allows UIs to display a label such as "Work", "Personal", "Preferred", etc.

For more information, see the GData specification.

Default value: NULL

Since 0.4.0

### The `"protocol"` property

      "protocol"                 gchar*                : Read / Write

Identifies the IM network. For example: `GDATA_GD_IM_PROTOCOL_JABBER` or `GDATA_GD_IM_PROTOCOL_GOOGLE_TALK`.

For more information, see the GData specification.

Default value: NULL

Since 0.4.0

### The `"relation-type"` property

      "relation-type"            gchar*                : Read / Write

A programmatic value that identifies the type of IM address. For example: `GDATA_GD_IM_ADDRESS_HOME` or `GDATA_GD_IM_ADDRESS_WORK`.

For more information, see the GData specification.

Default value: NULL

Since 0.4.0