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_awt_UnoControlFormattedFieldModel_idl__
24#define __com_sun_star_awt_UnoControlFormattedFieldModel_idl__
25
26#ifndef __com_sun_star_awt_FontDescriptor_idl__
27#include <com/sun/star/awt/FontDescriptor.idl>
28#endif
29
30#ifndef __com_sun_star_awt_UnoControlModel_idl__
31#include <com/sun/star/awt/UnoControlModel.idl>
32#endif
33
34#ifndef __com_sun_star_util_Color_idl__
35#include <com/sun/star/util/Color.idl>
36#endif
37
38#ifndef __com_sun_star_util_XNumberFormatsSupplier_idl__
39#include <com/sun/star/util/XNumberFormatsSupplier.idl>
40#endif
41
42#ifndef __com_sun_star_style_VerticalAlignment_idl__
43#include <com/sun/star/style/VerticalAlignment.idl>
44#endif
45
46//=============================================================================
47
48 module com {  module sun {  module star {  module awt {
49
50//=============================================================================
51
52/** specifies the standard model of an <type>UnoControlFormattedField </type>.
53 */
54published service UnoControlFormattedFieldModel
55{
56	service com::sun::star::awt::UnoControlModel;
57
58	//-------------------------------------------------------------------------
59
60	/** specifies the horiztonal alignment of the text in the control.
61
62		<pre>
63		0: left
64		1: center
65		2: right
66		</pre>
67	 */
68	[property] short Align;
69
70	//-------------------------------------------------------------------------
71
72	/** specifies the background color (RGB) of the control.
73	 */
74	[property] com::sun::star::util::Color BackgroundColor;
75
76	//-------------------------------------------------------------------------
77
78	/** specifies the border style of the control.
79
80		<pre>
81		0: No border
82		1: 3D border
83		2: simple border
84		</pre>
85	 */
86	[property] short Border;
87
88	//-------------------------------------------------------------------------
89
90	/** specifies the color of the border, if present
91
92        <p>Not every border style (see <member>Border</member>) may support coloring.
93        For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
94
95        @since OpenOffice 2.0
96	 */
97	[optional, property] long BorderColor;
98
99	//-------------------------------------------------------------------------
100
101	/** specifies the default value of the formatted field.
102
103		<p>This may be a numeric value (double) or a string, depending on
104        the formatting of the field.</p>
105	 */
106	[property] any EffectiveDefault;
107
108	//-------------------------------------------------------------------------
109
110	/** specifies the maximum value that can be entered.
111
112		<p>This property is ignored if the format of the field is no numeric
113        format.</p>
114	 */
115	[property] double EffectiveMax;
116
117	//-------------------------------------------------------------------------
118
119	/** specifies the minimum value that can be entered.
120
121		<p>This property is ignored if the format of the field is no numeric
122        format.</p>
123	 */
124	[property] double EffectiveMin;
125
126	//-------------------------------------------------------------------------
127
128	/** specifies the current value of the formatted field.
129
130		<p>This may be a numeric value (double) or a string, depending on
131        the formatting of the field.</p>
132	 */
133	[property] double EffectiveValue;
134
135	//-------------------------------------------------------------------------
136
137	/** determines whether the control is enabled or disabled.
138	 */
139	[property] boolean Enabled;
140
141	//-------------------------------------------------------------------------
142
143	/** specifies the font attributes of the text in the control.
144	 */
145	[property] com::sun::star::awt::FontDescriptor FontDescriptor;
146
147	//-------------------------------------------------------------------------
148
149	/** specifies the <type scope="com::sun::star::text">FontEmphasis</type>
150        value of the text in the control.
151	 */
152	[property] short FontEmphasisMark;
153
154	//-------------------------------------------------------------------------
155
156	/** specifies the <type scope="com::sun::star::text">FontRelief</type>
157        value of the text in the control.
158	 */
159	[property] short FontRelief;
160
161	//-------------------------------------------------------------------------
162
163	/** specifies the format to be used when formatting the field input
164        and output.
165
166		<p>This value is meaningful relative to the FormatsSupplier property
167        only.</p>
168	 */
169	[property] long FormatKey;
170
171	//-------------------------------------------------------------------------
172
173	/** supplies the formats the field should work with.
174	 */
175	[property] com::sun::star::util::XNumberFormatsSupplier FormatsSupplier;
176
177	//-------------------------------------------------------------------------
178
179	/** specifies the help text of the control.
180	 */
181	[property] string HelpText;
182
183	//-------------------------------------------------------------------------
184
185	/** specifies the help URL of the control.
186	 */
187	[property] string HelpURL;
188
189
190	//-------------------------------------------------------------------------
191
192    /** specifies whether the selection in the control should be hidden when
193        the control is not active (focused).
194
195        @since OpenOffice 2.0
196     */
197    [optional, property] boolean HideInactiveSelection;
198
199	//-------------------------------------------------------------------------
200
201	/** specifies the maximum character count.
202
203        <p>There's no limitation, if set to 0.</p>
204     */
205	[property] short MaxTextLen;
206
207	//-------------------------------------------------------------------------
208
209	/** specifies that the control will be printed with the document.
210	 */
211	[property] boolean Printable;
212
213	//-------------------------------------------------------------------------
214
215	/** specifies that the content of the control cannot be modified by the
216        user.
217	 */
218	[property] boolean ReadOnly;
219
220	//-------------------------------------------------------------------------
221
222	/** specifies whether the mouse should show repeating behaviour, i.e.
223        repeatedly trigger an action when keeping pressed.
224
225        @since OpenOffice 2.0
226     */
227    [optional, property] boolean Repeat;
228
229	//-------------------------------------------------------------------------
230
231	/** specifies the mouse repeat delay, in milliseconds.
232
233        <p>When the user presses a mouse in a control area where this triggers
234        an action (such as spinning the value), then usual control implementations
235        allow to repeatedly trigger this action, without the need to release the
236        mouse button and to press it again. The delay between two such triggers
237        is specified with this property.</p>
238
239        @since OpenOffice 2.0
240     */
241	[optional, property] long RepeatDelay;
242
243	//-------------------------------------------------------------------------
244
245	/** specifies that the control has a spin button.
246	 */
247	[property] boolean Spin;
248
249	//-------------------------------------------------------------------------
250
251	/** specifies that the text is checked during the user input.
252
253		<p>This property is optional - not every component implementing this
254        service is required to provide it, as real-time input checking on a
255        formatted field may be pretty expensive.</p>
256	 */
257	[optional, property] boolean StrictFormat;
258
259	//-------------------------------------------------------------------------
260
261	/** specifies that the control can be reached with the TAB key.
262	 */
263	[property] boolean Tabstop;
264
265	//-------------------------------------------------------------------------
266
267	/** specifies the text displayed in the control.
268	 */
269	[property] string Text;
270
271	//-------------------------------------------------------------------------
272
273	/** specifies the text color (RGB) of the control.
274	 */
275	[property] com::sun::star::util::Color TextColor;
276
277	//-------------------------------------------------------------------------
278
279	/** specifies the text line color (RGB) of the control.
280	 */
281	[property] com::sun::star::util::Color TextLineColor;
282
283	//-------------------------------------------------------------------------
284
285	/** specifies that the text is treated as a number.
286	 */
287	[property] boolean TreatAsNumber;
288
289    /** denotes the writing mode used in the control, as specified in the
290        <type scope="com::sun::star::text">WritingMode2</type> constants group.
291
292        <p>Only <member scope="com::sun::star::text">WritingMode2::LR_TB</member> and
293        <member scope="com::sun::star::text">WritingMode2::RL_TB</member> are supported at the moment.</p>
294
295        @since OpenOffice 3.1
296    */
297    [optional, property] short WritingMode;
298
299    /** defines how the mouse wheel can be used to scroll through the control's content.
300
301        <p>Usually, the mouse wheel spins the numeric value displayed in the control. Using this property,
302        and one of the <type>MouseWheelBehavior</type> constants, you can control under which circumstances
303        this is possible.</p>
304    */
305    [optional, property] short MouseWheelBehavior;
306
307    //-------------------------------------------------------------------------
308
309    /** specifies the vertical alignment of the text in the control.
310
311        @since OpenOffice 3.3
312	 */
313    [optional, property] com::sun::star::style::VerticalAlignment VerticalAlign;
314};
315
316//=============================================================================
317
318}; }; }; };
319
320#endif
321