1/************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27 28#ifndef __com_sun_star_form_binding_XValueBinding_idl__ 29#define __com_sun_star_form_binding_XValueBinding_idl__ 30 31#ifndef __com_sun_star_uno_XInterface_idl__ 32#include <com/sun/star/uno/XInterface.idl> 33#endif 34#ifndef __com_sun_star_lang_NoSupportException_idl__ 35#include <com/sun/star/lang/NoSupportException.idl> 36#endif 37#ifndef __com_sun_star_form_binding_IncompatibleTypesException_idl__ 38#include <com/sun/star/form/binding/IncompatibleTypesException.idl> 39#endif 40#ifndef __com_sun_star_form_binding_InvalidBindingStateException_idl__ 41#include <com/sun/star/form/binding/InvalidBindingStateException.idl> 42#endif 43 44//============================================================================= 45 46module com { module sun { module star { module form { module binding { 47 48//============================================================================= 49 50/** specifies a binding to a value which can be read and written. 51*/ 52interface XValueBinding : com::sun::star::uno::XInterface 53{ 54 //------------------------------------------------------------------------- 55 /** determines the types which are supported by this binding for value exchange 56 57 @see supportsType 58 */ 59 sequence< type > 60 getSupportedValueTypes( ); 61 62 /** determines whether a given type is supported by this binding for value exchange 63 64 <p>Calling this method is equal to calling <member>getSupportedValueTypes</member>, 65 and looking up the given type in the resulting type sequence.</p> 66 67 @see getSupportedValueTypes 68 */ 69 boolean supportsType( [in] type aType ); 70 71 /** retrieves the current value 72 73 @throws <type>IncompatibleTypesException</type> 74 if the requested value type is not supported by the binding 75 @see getSupportedValueTypes 76 @see supportsType 77 */ 78 any getValue( [in] type aType ) 79 raises( IncompatibleTypesException ); 80 81 /** sets the current value 82 83 @throws <type>IncompatibleTypesException</type> 84 if the given value type is not supported by the binding 85 @throws <type>InvalidBindingStateException</type> 86 if the value currently cannot be changed, since the binding is not 87 fully operational. Possible reasons for this include the binding being 88 readonly, or the target of the binding not being present. 89 @throws <type scope="com::sun::star::lang">NoSupportException</type> 90 if the binding in general does not support write access to it's binding 91 92 @see getSupportedValueTypes 93 @see supportsType 94 @see ValueBinding 95 */ 96 void setValue( [in] any aValue ) 97 raises( IncompatibleTypesException, InvalidBindingStateException, com::sun::star::lang::NoSupportException ); 98}; 99 100//============================================================================= 101 102}; }; }; }; }; 103 104#endif 105