1/* $Id: relationset.hg,v 1.3 2005/01/05 18:21:30 murrayc Exp $ */ 2 3/* Copyright (C) 1998-2002 The gtkmm Development Team 4 * 5 * This library is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU Lesser General Public 7 * License as published by the Free Software Foundation; either 8 * version 2.1 of the License, or (at your option) any later version. 9 * 10 * This library is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public 16 * License along with this library; if not, write to the Free 17 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 18 */ 19 20 21#include <atkmm/relation.h> 22#include <atkmm/object.h> 23 24_DEFS(atkmm,atk) 25_PINCLUDE(glibmm/private/object_p.h) 26 27namespace Atk 28{ 29 30/** A set of Atk::Relations, normally the set of AtkRelations which an Atk::Object has. 31 */ 32class RelationSet : public Glib::Object 33{ 34 _CLASS_GOBJECT(RelationSet, AtkRelationSet, ATK_RELATION_SET, Glib::Object, GObject) 35protected: 36 _CTOR_DEFAULT 37 38public: 39 _WRAP_CREATE() 40 41 _WRAP_METHOD(bool set_contains(RelationType relationship), atk_relation_set_contains) 42 _WRAP_METHOD(void set_remove(const Glib::RefPtr<Relation>& relation), atk_relation_set_remove) 43 _WRAP_METHOD(void set_add(const Glib::RefPtr<Relation>& relation), atk_relation_set_add) 44 _WRAP_METHOD(int get_n_relations() const, atk_relation_set_get_n_relations) 45 _WRAP_METHOD(Glib::RefPtr<Relation> get_relation(gint i), atk_relation_set_get_relation, refreturn) 46 _WRAP_METHOD(Glib::RefPtr<Relation> get_relation(RelationType relationship), atk_relation_set_get_relation_by_type, refreturn) 47 48 _WRAP_METHOD(void add_relation_by_type(RelationType relationship, const Glib::RefPtr<Atk::Object>& target), atk_relation_set_add_relation_by_type) 49}; 50 51} // namespace Atk 52 53