1*b1cdbd2cSJim Jagielski/************************************************************** 2*b1cdbd2cSJim Jagielski * 3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski * or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski * distributed with this work for additional information 6*b1cdbd2cSJim Jagielski * regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski * with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski * 11*b1cdbd2cSJim Jagielski * http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski * 13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski * KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski * under the License. 19*b1cdbd2cSJim Jagielski * 20*b1cdbd2cSJim Jagielski *************************************************************/ 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski 23*b1cdbd2cSJim Jagielski 24*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_accessibility_XAccessibleRelationSet_idl__ 25*b1cdbd2cSJim Jagielski#define __com_sun_star_accessibility_XAccessibleRelationSet_idl__ 26*b1cdbd2cSJim Jagielski 27*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_accessibility_AccessibleRelation_idl__ 28*b1cdbd2cSJim Jagielski#include <com/sun/star/accessibility/AccessibleRelation.idl> 29*b1cdbd2cSJim Jagielski#endif 30*b1cdbd2cSJim Jagielski 31*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_uno_XInterface_idl__ 32*b1cdbd2cSJim Jagielski#include <com/sun/star/uno/XInterface.idl> 33*b1cdbd2cSJim Jagielski#endif 34*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_lang_IndexOutOfBoundsException_idl__ 35*b1cdbd2cSJim Jagielski#include <com/sun/star/lang/IndexOutOfBoundsException.idl> 36*b1cdbd2cSJim Jagielski#endif 37*b1cdbd2cSJim Jagielski 38*b1cdbd2cSJim Jagielskimodule com { module sun { module star { module accessibility { 39*b1cdbd2cSJim Jagielski 40*b1cdbd2cSJim Jagielski/** Implement this interface to give access to an object's set of relations. 41*b1cdbd2cSJim Jagielski 42*b1cdbd2cSJim Jagielski <p>Such relation are modeled with the <type>AccessibleRelation</type> 43*b1cdbd2cSJim Jagielski structure. This interface is used for representing sets of relations 44*b1cdbd2cSJim Jagielski between <type>Accessible</type> objects. Most of the convenience 45*b1cdbd2cSJim Jagielski methods of the corresponding AccessibleRelationSet interface of the Java 46*b1cdbd2cSJim Jagielski Accessibility API have been removed from this interface in order to 47*b1cdbd2cSJim Jagielski clean it up. These methods are <member>add</member>, 48*b1cdbd2cSJim Jagielski <member>addAll</member>, <member>clear</member>, and 49*b1cdbd2cSJim Jagielski <member>remove</member>. The other methods have been renamed to achieve 50*b1cdbd2cSJim Jagielski a geater conformance with the other accessibility interfaces.</p> 51*b1cdbd2cSJim Jagielski 52*b1cdbd2cSJim Jagielski @since OpenOffice 1.1.2 53*b1cdbd2cSJim Jagielski*/ 54*b1cdbd2cSJim Jagielskipublished interface XAccessibleRelationSet : ::com::sun::star::uno::XInterface 55*b1cdbd2cSJim Jagielski{ 56*b1cdbd2cSJim Jagielski /** Returns the number of relations in this relation set. 57*b1cdbd2cSJim Jagielski 58*b1cdbd2cSJim Jagielski @return 59*b1cdbd2cSJim Jagielski Returns the number of relations or zero if there are none. 60*b1cdbd2cSJim Jagielski */ 61*b1cdbd2cSJim Jagielski long getRelationCount (); 62*b1cdbd2cSJim Jagielski 63*b1cdbd2cSJim Jagielski /** Returns the relation of this relation set that is specified by 64*b1cdbd2cSJim Jagielski the given index. 65*b1cdbd2cSJim Jagielski 66*b1cdbd2cSJim Jagielski @param nIndex 67*b1cdbd2cSJim Jagielski This index specifies the relatio to return. 68*b1cdbd2cSJim Jagielski 69*b1cdbd2cSJim Jagielski @return 70*b1cdbd2cSJim Jagielski For a valid index, i.e. inside the range 0 to the number of 71*b1cdbd2cSJim Jagielski relations minus one, the returned value is the requested 72*b1cdbd2cSJim Jagielski relation. If the index is invalid then the returned relation 73*b1cdbd2cSJim Jagielski has the type INVALID. 74*b1cdbd2cSJim Jagielski 75*b1cdbd2cSJim Jagielski */ 76*b1cdbd2cSJim Jagielski AccessibleRelation getRelation ([in] long nIndex) 77*b1cdbd2cSJim Jagielski raises (::com::sun::star::lang::IndexOutOfBoundsException); 78*b1cdbd2cSJim Jagielski 79*b1cdbd2cSJim Jagielski /** Tests whether the relation set contains a relation matching the 80*b1cdbd2cSJim Jagielski specified key. 81*b1cdbd2cSJim Jagielski 82*b1cdbd2cSJim Jagielski @param aRelationType 83*b1cdbd2cSJim Jagielski The type of relation to look for in this set of relations. This 84*b1cdbd2cSJim Jagielski has to be one of the constants of 85*b1cdbd2cSJim Jagielski <type>AccessibleRelationType</type>. 86*b1cdbd2cSJim Jagielski 87*b1cdbd2cSJim Jagielski @return 88*b1cdbd2cSJim Jagielski Returns <TRUE/> if there is a (at least one) relation of the 89*b1cdbd2cSJim Jagielski given type and <FALSE/> if there is no such relation in the set. 90*b1cdbd2cSJim Jagielski */ 91*b1cdbd2cSJim Jagielski boolean containsRelation ([in] short aRelationType); 92*b1cdbd2cSJim Jagielski 93*b1cdbd2cSJim Jagielski /** Retrieve and return the relation with the given relation type. 94*b1cdbd2cSJim Jagielski 95*b1cdbd2cSJim Jagielski @param aRelationType 96*b1cdbd2cSJim Jagielski The type of the relation to return. This has to be one of the 97*b1cdbd2cSJim Jagielski constants of <type>AccessibleRelationType</type>. 98*b1cdbd2cSJim Jagielski 99*b1cdbd2cSJim Jagielski @return 100*b1cdbd2cSJim Jagielski If a relation with the given type could be found than (a copy 101*b1cdbd2cSJim Jagielski of) this relation is returned. Otherwise a relation with the 102*b1cdbd2cSJim Jagielski type INVALID is returned. 103*b1cdbd2cSJim Jagielski */ 104*b1cdbd2cSJim Jagielski AccessibleRelation getRelationByType ([in] short aRelationType); 105*b1cdbd2cSJim Jagielski}; 106*b1cdbd2cSJim Jagielski 107*b1cdbd2cSJim Jagielski}; }; }; }; 108*b1cdbd2cSJim Jagielski 109*b1cdbd2cSJim Jagielski#endif 110