other-licenses/atk-1.0/atk/atkrelation.h

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/other-licenses/atk-1.0/atk/atkrelation.h	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,88 @@
     1.4 +/* ATK -  Accessibility Toolkit
     1.5 + * Copyright 2001 Sun Microsystems Inc.
     1.6 + *
     1.7 + * This library is free software; you can redistribute it and/or
     1.8 + * modify it under the terms of the GNU Library General Public
     1.9 + * License as published by the Free Software Foundation; either
    1.10 + * version 2 of the License, or (at your option) any later version.
    1.11 + *
    1.12 + * This library is distributed in the hope that it will be useful,
    1.13 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
    1.14 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    1.15 + * Library General Public License for more details.
    1.16 + *
    1.17 + * You should have received a copy of the GNU Library General Public
    1.18 + * License along with this library; if not, write to the
    1.19 + * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    1.20 + * Boston, MA 02111-1307, USA.
    1.21 + */
    1.22 +
    1.23 +#ifndef __ATK_RELATION_H__
    1.24 +#define __ATK_RELATION_H__
    1.25 +
    1.26 +#ifdef __cplusplus
    1.27 +extern "C" {
    1.28 +#endif /* __cplusplus */
    1.29 +
    1.30 +#include <glib-object.h>
    1.31 +#include <atk/atkrelationtype.h>
    1.32 +
    1.33 +/*
    1.34 + * An AtkRelation describes a relation between the object and one or more 
    1.35 + * other objects. The actual relations that an object has with other objects
    1.36 + * are defined as an AtkRelationSet, which is a set of AtkRelations. 
    1.37 + */
    1.38 +
    1.39 +#define ATK_TYPE_RELATION                         (atk_relation_get_type ())
    1.40 +#define ATK_RELATION(obj)                         (G_TYPE_CHECK_INSTANCE_CAST ((obj), ATK_TYPE_RELATION, AtkRelation))
    1.41 +#define ATK_RELATION_CLASS(klass)                 (G_TYPE_CHECK_CLASS_CAST ((klass), ATK_TYPE_RELATION, AtkRelationClass))
    1.42 +#define ATK_IS_RELATION(obj)                      (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ATK_TYPE_RELATION))
    1.43 +#define ATK_IS_RELATION_CLASS(klass)              (G_TYPE_CHECK_CLASS_TYPE ((klass), ATK_TYPE_RELATION))
    1.44 +#define ATK_RELATION_GET_CLASS(obj)               (G_TYPE_INSTANCE_GET_CLASS ((obj), ATK_TYPE_RELATION, AtkRelationClass))
    1.45 +
    1.46 +typedef struct _AtkRelation            AtkRelation;
    1.47 +typedef struct _AtkRelationClass       AtkRelationClass;
    1.48 +
    1.49 +struct _AtkRelation
    1.50 +{
    1.51 +  GObject parent;
    1.52 +
    1.53 +  GPtrArray       *target;
    1.54 +  AtkRelationType relationship;
    1.55 +};
    1.56 +
    1.57 +struct _AtkRelationClass
    1.58 +{
    1.59 +  GObjectClass parent;
    1.60 +};
    1.61 +
    1.62 +GType atk_relation_get_type (void);
    1.63 +
    1.64 +AtkRelationType       atk_relation_type_register      (const gchar     *name);
    1.65 +G_CONST_RETURN gchar* atk_relation_type_get_name      (AtkRelationType type);
    1.66 +AtkRelationType       atk_relation_type_for_name      (const gchar     *name);
    1.67 +
    1.68 +/*
    1.69 + * Create a new relation for the specified key and the specified list
    1.70 + * of targets.
    1.71 + */
    1.72 +AtkRelation*          atk_relation_new                (AtkObject       **targets,
    1.73 +                                                       gint            n_targets,
    1.74 +                                                       AtkRelationType relationship);
    1.75 +/*
    1.76 + * Returns the type of a relation.
    1.77 + */
    1.78 +AtkRelationType       atk_relation_get_relation_type  (AtkRelation     *relation);
    1.79 +/*
    1.80 + * Returns the target list of a relation.
    1.81 + */
    1.82 +GPtrArray*            atk_relation_get_target         (AtkRelation     *relation);
    1.83 +void                  atk_relation_add_target         (AtkRelation     *relation,
    1.84 +                                                       AtkObject       *target);
    1.85 +                
    1.86 +
    1.87 +#ifdef __cplusplus
    1.88 +}
    1.89 +#endif /* __cplusplus */
    1.90 +
    1.91 +#endif /* __ATK_RELATION_H__ */

mercurial