Line data Source code
1 : #ifndef INCLUDED_COM_SUN_STAR_XSD_XDATATYPE_HDL
2 : #define INCLUDED_COM_SUN_STAR_XSD_XDATATYPE_HDL
3 :
4 : #include "sal/config.h"
5 :
6 : #include "com/sun/star/uno/RuntimeException.hdl"
7 : #include "com/sun/star/lang/IllegalArgumentException.hdl"
8 : #include "com/sun/star/util/VetoException.hdl"
9 : #include "com/sun/star/beans/XPropertySet.hdl"
10 : #include "com/sun/star/uno/Reference.h"
11 : #include "cppu/macros.hxx"
12 : #include "rtl/ustring.hxx"
13 : #include "sal/types.h"
14 :
15 : namespace com { namespace sun { namespace star { namespace uno { class Type; } } } }
16 :
17 : namespace com { namespace sun { namespace star { namespace xsd {
18 :
19 0 : class SAL_NO_VTABLE XDataType : public css::beans::XPropertySet
20 : {
21 : public:
22 :
23 : // Attributes
24 : virtual ::rtl::OUString SAL_CALL getName() = 0;
25 : virtual void SAL_CALL setName( const ::rtl::OUString& _name ) = 0;
26 : virtual ::rtl::OUString SAL_CALL getPattern() = 0;
27 : virtual void SAL_CALL setPattern( const ::rtl::OUString& _pattern ) = 0;
28 : virtual ::sal_Int16 SAL_CALL getWhiteSpaceTreatment() = 0;
29 : virtual void SAL_CALL setWhiteSpaceTreatment( ::sal_Int16 _whitespacetreatment ) = 0;
30 : virtual ::sal_Bool SAL_CALL getIsBasic() = 0;
31 : virtual ::sal_Int16 SAL_CALL getTypeClass() = 0;
32 :
33 : // Methods
34 : virtual ::sal_Bool SAL_CALL validate( const ::rtl::OUString& value ) = 0;
35 : virtual ::rtl::OUString SAL_CALL explainInvalid( const ::rtl::OUString& value ) = 0;
36 :
37 : static inline ::com::sun::star::uno::Type const & SAL_CALL static_type(void * = 0);
38 :
39 : protected:
40 0 : ~XDataType() throw () {} // avoid warnings about virtual members and non-virtual dtor
41 : };
42 :
43 :
44 : inline ::com::sun::star::uno::Type const & cppu_detail_getUnoType(SAL_UNUSED_PARAMETER css::xsd::XDataType const *);
45 : } } } }
46 :
47 : inline ::com::sun::star::uno::Type const & SAL_CALL getCppuType(const ::com::sun::star::uno::Reference< css::xsd::XDataType > *) SAL_THROW(());
48 :
49 : #endif
|