| /************************************************************** |
| * |
| * 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 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| |
| #ifndef __com_sun_star_form_binding_BindableDatabaseRadioButton_idl__ |
| #define __com_sun_star_form_binding_BindableDatabaseRadioButton_idl__ |
| |
| #ifndef __com_sun_star_form_component_DatabaseRadioButton_idl__ |
| #include <com/sun/star/form/component/DatabaseRadioButton.idl> |
| #endif |
| |
| #ifndef __com_sun_star_form_binding_BindableDataAwareControlModel_idl__ |
| #include <com/sun/star/form/binding/BindableDataAwareControlModel.idl> |
| #endif |
| |
| //============================================================================= |
| |
| module com { module sun { module star { module form { module binding { |
| |
| //============================================================================= |
| |
| /** This service specifies a radio button which is data-aware and thus can be bound to a |
| database field, and additionally supports binding to arbitrary external values. |
| |
| <p>The <type scope="com::sun::star::form::binding">XValueBinding</type> instance which |
| can be associated with a <type>BindableDatabaseRadioButton</type> must support exchanging |
| boolean values. The following mapping between external values and control states apply: |
| <ul><li><TRUE/> will be mapped to the button being checked, and vice versa</li> |
| <li><FALSE/> will be mapped to it being unchecked, and vice versa</li> |
| <li><NULL/> will be mapped to it being in indetermined state</li> |
| </ul></p> |
| |
| <p>If the value binding associated with a <type>BindableDatabaseRadioButton</type> |
| supports exchanging string values, <em>and</em> the <member scope="com::sun::star::form::component">RadioButton::RefValue</member> |
| is <em>not</em> empty, then the radio button will exchange it's value as string: |
| <ul><li>A string equal to the reference value will be mapped to the button being checked, and vice versa</li> |
| <li>A string not equal to the reference value will be mapped to the button being unchecked, and vice versa</li> |
| <li><NULL/> will be mapped to it being in indetermined state</li> |
| </ul></p> |
| |
| @see com::sun::star::form::binding::XValueBinding::supportsType |
| @see com::sun::star::awt::UnoControlRadioButtonModel::State |
| @see com::sun::star::form::component::RadioButton::RefValue |
| */ |
| service BindableDatabaseRadioButton |
| { |
| service com::sun::star::form::component::DatabaseRadioButton; |
| |
| /** specifies the interaction between an internal binding to a database column, |
| and an external value binding.</p> |
| */ |
| service com::sun::star::form::binding::BindableDataAwareControlModel; |
| |
| /** specifies a value which is to be associated with the control when it's <em>not</em> |
| selected. |
| |
| <p><member scope="com::sun::star::form::component">RadioButton::RefValue</member> is transferred to |
| possible external value bindings as soon as the radio button is selected. With the member |
| <member>SecondaryRefValue</member>, clients of the radio button can also associate a value with |
| the <em>not selected</em> state of the control.</p> |
| */ |
| [property] string SecondaryRefValue; |
| }; |
| |
| //============================================================================= |
| |
| }; }; }; }; }; |
| |
| #endif |