AtkRelation

AtkRelation — An object used to describe a relation between a object and one or more other objects.

Functions

Properties

AtkRelationType relation-type Read / Write
GValueArray * target Read / Write

Types and Values

Object Hierarchy

    GObject
    ╰── AtkRelation

Description

An AtkRelation describes a relation between an object and one or more other objects. The actual relations that an object has with other objects are defined as an AtkRelationSet, which is a set of AtkRelations.

Functions

atk_relation_type_register ()

AtkRelationType
atk_relation_type_register (const gchar *name);

Associate name with a new AtkRelationType

Parameters

name

a name string

 

Returns

an AtkRelationType associated with name


atk_relation_type_get_name ()

const gchar *
atk_relation_type_get_name (AtkRelationType type);

Gets the description string describing the AtkRelationType type .

Parameters

type

The AtkRelationType whose name is required

 

Returns

the string describing the AtkRelationType


atk_relation_type_for_name ()

AtkRelationType
atk_relation_type_for_name (const gchar *name);

Get the AtkRelationType type corresponding to a relation name.

Parameters

name

a string which is the (non-localized) name of an ATK relation type.

 

Returns

the AtkRelationType enumerated type corresponding to the specified name, or ATK_RELATION_NULL if no matching relation type is found.


atk_relation_new ()

AtkRelation *
atk_relation_new (AtkObject **targets,
                  gint n_targets,
                  AtkRelationType relationship);

Create a new relation for the specified key and the specified list of targets. See also atk_object_add_relationship().

Parameters

targets

an array of pointers to AtkObjects.

[array length=n_targets]

n_targets

number of AtkObjects pointed to by targets

 

relationship

an AtkRelationType with which to create the new AtkRelation

 

Returns

a pointer to a new AtkRelation


atk_relation_get_relation_type ()

AtkRelationType
atk_relation_get_relation_type (AtkRelation *relation);

Gets the type of relation

Parameters

relation

an AtkRelation

 

Returns

the type of relation


atk_relation_get_target ()

GPtrArray *
atk_relation_get_target (AtkRelation *relation);

Gets the target list of relation

Parameters

relation

an AtkRelation

 

Returns

the target list of relation .

[transfer none][element-type Atk.Object]


atk_relation_add_target ()

void
atk_relation_add_target (AtkRelation *relation,
                         AtkObject *target);

Adds the specified AtkObject to the target for the relation, if it is not already present. See also atk_object_add_relationship().

Parameters

relation

an AtkRelation

 

target

an AtkObject

 

Since 1.9


atk_relation_remove_target ()

gboolean
atk_relation_remove_target (AtkRelation *relation,
                            AtkObject *target);

Remove the specified AtkObject from the target for the relation.

Parameters

relation

an AtkRelation

 

target

an AtkObject

 

Returns

TRUE if the removal is successful.

Types and Values

struct AtkRelation

struct AtkRelation;


enum AtkRelationType

Describes the type of the relation

Members

ATK_RELATION_NULL

Not used, represens "no relationship" or an error condition.

 

ATK_RELATION_CONTROLLED_BY

Indicates an object controlled by one or more target objects.

 

ATK_RELATION_CONTROLLER_FOR

Indicates an object is an controller for one or more target objects.

 

ATK_RELATION_LABEL_FOR

Indicates an object is a label for one or more target objects.

 

ATK_RELATION_LABELLED_BY

Indicates an object is labelled by one or more target objects.

 

ATK_RELATION_MEMBER_OF

Indicates an object is a member of a group of one or more target objects.

 

ATK_RELATION_NODE_CHILD_OF

Indicates an object is a cell in a treetable which is displayed because a cell in the same column is expanded and identifies that cell.

 

ATK_RELATION_FLOWS_TO

Indicates that the object has content that flows logically to another AtkObject in a sequential way, (for instance text-flow).

 

ATK_RELATION_FLOWS_FROM

Indicates that the object has content that flows logically from another AtkObject in a sequential way, (for instance text-flow).

 

ATK_RELATION_SUBWINDOW_OF

Indicates a subwindow attached to a component but otherwise has no connection in the UI heirarchy to that component.

 

ATK_RELATION_EMBEDS

Indicates that the object visually embeds another object's content, i.e. this object's content flows around another's content.

 

ATK_RELATION_EMBEDDED_BY

Inverse of ATK_RELATION_EMBEDS, indicates that this object's content is visualy embedded in another object.

 

ATK_RELATION_POPUP_FOR

Indicates that an object is a popup for another object.

 

ATK_RELATION_PARENT_WINDOW_OF

Indicates that an object is a parent window of another object.

 

ATK_RELATION_DESCRIBED_BY

Indicates that another object provides descriptive information about this object; more verbose than ATK_RELATION_LABELLED_BY.

 

ATK_RELATION_DESCRIPTION_FOR

Indicates that an object provides descriptive information about another object; more verbose than ATK_RELATION_LABEL_FOR.

 

ATK_RELATION_NODE_PARENT_OF

Indicates an object is a cell in a treetable and is expanded to display other cells in the same column.

 

ATK_RELATION_LAST_DEFINED

Not used, this value indicates the end of the enumeration.

 

Property Details

The “relation-type” property

  “relation-type”            AtkRelationType

The type of the relation.

Flags: Read / Write

Default value: ATK_RELATION_NULL


The “target” property

  “target”                   GValueArray *

An array of the targets for the relation.

Flags: Read / Write