1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements.  See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership.  The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License.  You may obtain a copy of the License at
10 *
11 *   http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied.  See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22
23#ifndef __com_sun_star_form_component_RadioButton_idl__
24#define __com_sun_star_form_component_RadioButton_idl__
25
26#ifndef __com_sun_star_awt_UnoControlRadioButtonModel_idl__
27#include <com/sun/star/awt/UnoControlRadioButtonModel.idl>
28#endif
29
30#ifndef __com_sun_star_form_FormControlModel_idl__
31#include <com/sun/star/form/FormControlModel.idl>
32#endif
33
34#ifndef __com_sun_star_form_XReset_idl__
35#include <com/sun/star/form/XReset.idl>
36#endif
37
38
39//=============================================================================
40
41 module com {  module sun {  module star {  module form {  module component {
42
43//=============================================================================
44
45/** specifies a component which acts as a radio button as needed in <type>HTMLForm</type>s.
46
47	<p>Radio buttons are controls which can be grouped together, and in every
48	group, only one of the controls can be check. This means if one of them
49	is checked by a user interaction, all other controls in the same group
50	are automatically unchecked</p>
51
52	<p>Like in HTML, radio buttons are grouped together if and only if they have the
53	same name (see <member scope="com::sun::star::form">FormComponent::Name</member>).</p>
54 */
55published service RadioButton
56{
57	service com::sun::star::awt::UnoControlRadioButtonModel;
58
59	service com::sun::star::form::FormControlModel;
60
61	/** can be used to reset the control to it's default text.
62
63		@see RadioButton::DefaultState
64	*/
65	interface com::sun::star::form::XReset;
66
67	//-------------------------------------------------------------------------
68
69	/** contains a default value for the control.
70
71		<p>This value is used when the control is initially displayed, and for resetting it.</p>
72
73		<p> In a group of radio buttons only one button should be checked
74		by default.</p>
75
76		@see com::sun::star::awt::UnoControlRadioButtonModel::State
77		@see com::sun::star::form::XReset
78	 */
79	[property] short DefaultState;
80
81	//-------------------------------------------------------------------------
82
83	/** contains a reference value which is used for submission in a HTML
84		form.
85
86		<p>If the form the control belongs to is to be submitted (see
87		<type scope="com::sun::star::form">XSubmit</type>), and the control is checked, this reference
88		value is used for submission.</p>
89	 */
90	[property] string RefValue;
91
92
93    /** specifies a value which is to be associated with the control when it's <em>not</em>
94        selected.
95
96        <p>In various situations, the <member>RefValue</member> is associated with the control
97        if and only if it is selected.<br/>
98        <member>UncheckedRefValue</member> provides a extensions of this concept: If present,
99        the value should be associated with the control when it is <em>not</em> selected.</p>
100    */
101    [optional, property] string UncheckedRefValue;
102};
103
104//=============================================================================
105
106}; }; }; }; };
107
108#endif
109