diff options
Diffstat (limited to 'offapi/com/sun/star/form/validation/ValidatableBindableControlModel.idl')
-rw-r--r-- | offapi/com/sun/star/form/validation/ValidatableBindableControlModel.idl | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/offapi/com/sun/star/form/validation/ValidatableBindableControlModel.idl b/offapi/com/sun/star/form/validation/ValidatableBindableControlModel.idl new file mode 100644 index 000000000..33a94d2c6 --- /dev/null +++ b/offapi/com/sun/star/form/validation/ValidatableBindableControlModel.idl @@ -0,0 +1,66 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_form_validation_ValidatableBindableControlModel_idl__ +#define __com_sun_star_form_validation_ValidatableBindableControlModel_idl__ + +#include <com/sun/star/form/validation/ValidatableControlModel.idl> +#include <com/sun/star/form/binding/BindableControlModel.idl> + +module com { module sun { module star { module form { module validation { + +/** specifies a control model which supports both binding to an external value supplier, + and to an external validator. + + <p>There are two methods how the value which is represented by a control model + can interact with other components (well, except the trivial ones accessible + by using com::sun::star::beans::XPropertySet): + <ul><li>binding the value to an external component via com::sun::star::form::binding::XBindableValue</li> + <li>validating the current value by an external component, via XValidatable and XValidator</li> + </ul></p> + + <p>The ValidatableBindableControlModel services describes the interaction of these concepts + for control models which support both of them.</p> +*/ +service ValidatableBindableControlModel +{ + /** specifies support for validating the current value of the control + */ + service ValidatableControlModel; + + /** specifies support for binding the control value to an external component + + <p>If a value binding is established at the control model (by using + com::sun::star::form::binding::XBindableValue::setValueBinding() with a non-`NULL` + binding), this binding is analyzed for validation support. If it is present (read: if the + binding also supports the XValidator interface), the binding is also + established as validator, as if it has been passed to XValidatable::setValidator().<br/> + If, while this binding is active (in both its roles as value binding and validator), + an attempt is made to establish another validator, this is blocked with raising a + com::sun::star::util::VetoException upon calling XValidatable::setValidator().</p> + */ + service com::sun::star::form::binding::BindableControlModel; +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |