1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
21 module com
{ module sun
{ module star
{ module form
{ module binding
{
24 /** This service specifies a radio button which is data-aware and thus can be bound to a
25 database field, and additionally supports binding to arbitrary external values.
27 <p>The com::sun::star::form::binding::XValueBinding instance which
28 can be associated with a BindableDatabaseRadioButton must support exchanging
29 boolean values. The following mapping between external values and control states apply:
30 <ul><li>`TRUE` will be mapped to the button being checked, and vice versa</li>
31 <li>`FALSE` will be mapped to it being unchecked, and vice versa</li>
32 <li>`NULL` will be mapped to it being in undetermined state</li>
35 <p>If the value binding associated with a BindableDatabaseRadioButton
36 supports exchanging string values, <em>and</em> the com::sun::star::form::component::RadioButton::RefValue
37 is <em>not</em> empty, then the radio button will exchange its value as string:
38 <ul><li>A string equal to the reference value will be mapped to the button being checked, and vice versa</li>
39 <li>A string not equal to the reference value will be mapped to the button being unchecked, and vice versa</li>
40 <li>`NULL` will be mapped to it being in undetermined state</li>
43 @see com::sun::star::form::binding::XValueBinding::supportsType
44 @see com::sun::star::awt::UnoControlRadioButtonModel::State
45 @see com::sun::star::form::component::RadioButton::RefValue
47 service BindableDatabaseRadioButton
49 service com
::sun
::star
::form
::component
::DatabaseRadioButton
;
51 /** specifies the interaction between an internal binding to a database column,
52 and an external value binding.</p>
54 service com
::sun
::star
::form
::binding
::BindableDataAwareControlModel
;
56 /** specifies a value which is to be associated with the control when it's <em>not</em>
59 <p>com::sun::star::form::component::RadioButton::RefValue is transferred to
60 possible external value bindings as soon as the radio button is selected. With the member
61 #SecondaryRefValue, clients of the radio button can also associate a value with
62 the <em>not selected</em> state of the control.</p>
64 [property
] string SecondaryRefValue
;
70 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */