1 /*************************************************************************
2  *
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * Copyright 2000, 2010 Oracle and/or its affiliates.
6  *
7  * OpenOffice.org - a multi-platform office productivity suite
8  *
9  * This file is part of OpenOffice.org.
10  *
11  * OpenOffice.org is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * OpenOffice.org is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU Lesser General Public License version 3 for more details
19  * (a copy is included in the LICENSE file that accompanied this code).
20  *
21  * You should have received a copy of the GNU Lesser General Public License
22  * version 3 along with OpenOffice.org.  If not, see
23  * <http://www.openoffice.org/license.html>
24  * for a copy of the LGPLv3 License.
25  *
26  ************************************************************************/
27 
28 #ifndef _XMLOFF_FORMS_VALUEPROPERTIES_HXX_
29 #define _XMLOFF_FORMS_VALUEPROPERTIES_HXX_
30 
31 #include "controlelement.hxx"
32 
33 //.........................................................................
34 namespace xmloff
35 {
36 //.........................................................................
37 
38 	//=====================================================================
39 	//= OValuePropertiesMetaData
40 	//=====================================================================
41 	class OValuePropertiesMetaData
42 	{
43 	protected:
44 		OValuePropertiesMetaData() { }
45 
46 	public:
47 		/** calculate the property names for the <em>current-value</em> and the <em>value</em> attribute.
48 
49 			<p>If controls of the given FormComponentType do not have any of the properties requested,
50 			the respective out parameter will be set to NULL.</p>
51 		*/
52 		static void getValuePropertyNames(
53 			OControlElement::ElementType _eType,
54 			sal_Int16 _nFormComponentType,
55 			sal_Char const * & _rpCurrentValuePropertyName,
56 			sal_Char const * & _rpValuePropertyName);
57 
58 		/** calculate the property names for the <em>min-value</em> and the <em>max-value</em> attribute.
59 
60 			<p>If controls of the given FormComponentType do not have any of the properties requested,
61 			the respective out parameter will be set to NULL.</p>
62 		*/
63 		static void getValueLimitPropertyNames(
64 			sal_Int16 _nFormComponentType,
65 			sal_Char const * & _rpMinValuePropertyName,
66 			sal_Char const * & _rpMaxValuePropertyName);
67 
68 		/** calculate the names of the properties which, at runtime, are used for <em>value</em> and
69 			<em>default value</em>.
70 		*/
71 		static void getRuntimeValuePropertyNames(
72 			OControlElement::ElementType _eType,
73 			sal_Int16 _nFormComponentType,
74 			sal_Char const * & _rpValuePropertyName,
75 			sal_Char const * & _rpDefaultValuePropertyName);
76 	};
77 
78 //.........................................................................
79 }	// namespace xmloff
80 //.........................................................................
81 
82 #endif // _XMLOFF_FORMS_VALUEPROPERTIES_HXX_
83 
84 
85