merge the formfield patch from ooo-build
[ooovba.git] / binfilter / inc / bf_xmloff / XMLIndexBibliographyConfigurationContext.hxx
blob782b730f295e871f1ee2be7bfe9b110bc7c38ff7
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: XMLIndexBibliographyConfigurationContext.hxx,v $
10 * $Revision: 1.4 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #ifndef _XMLOFF_XMLINDEXBIBLIOGRAPHYCONFIGURATIONCONTEXT_HXX_
32 #define _XMLOFF_XMLINDEXBIBLIOGRAPHYCONFIGURATIONCONTEXT_HXX_
34 #ifndef _XMLOFF_XMLSTYLE_HXX
35 #include "xmlstyle.hxx"
36 #endif
38 #ifndef _COM_SUN_STAR_UNO_REFERENCE_H_
39 #include <com/sun/star/uno/Reference.h>
40 #endif
42 #ifndef _COM_SUN_STAR_UNO_SEQUENCE_H_
43 #include <com/sun/star/uno/Sequence.h>
44 #endif
46 #ifndef _COM_SUN_STAR_BEANS_PROPERTYVALUE_HPP_
47 #include <com/sun/star/beans/PropertyValue.hpp>
48 #endif
50 #ifndef _COM_SUN_STAR_LANG_LOCALE_HPP_
51 #include <com/sun/star/lang/Locale.hpp>
52 #endif
54 #ifndef _RTL_USTRING_HXX_
55 #include <rtl/ustring.hxx>
56 #endif
59 #include <vector>
61 namespace com { namespace sun { namespace star {
62 namespace xml { namespace sax { class XAttributeList; } }
63 } } }
64 namespace binfilter {
67 /**
68 * Import bibliography configuration.
70 * Little cheat: Cover all child elements in CreateChildContext.
72 class XMLIndexBibliographyConfigurationContext : public SvXMLStyleContext
74 const ::rtl::OUString sFieldMaster_Bibliography;
75 const ::rtl::OUString sBracketBefore;
76 const ::rtl::OUString sBracketAfter;
77 const ::rtl::OUString sIsNumberEntries;
78 const ::rtl::OUString sIsSortByPosition;
79 const ::rtl::OUString sSortKeys;
80 const ::rtl::OUString sSortKey;
81 const ::rtl::OUString sIsSortAscending;
82 const ::rtl::OUString sSortAlgorithm;
83 const ::rtl::OUString sLocale;
85 ::rtl::OUString sSuffix;
86 ::rtl::OUString sPrefix;
87 ::rtl::OUString sAlgorithm;
88 ::com::sun::star::lang::Locale aLocale;
89 sal_Bool bNumberedEntries;
90 sal_Bool bSortByPosition;
92 ::std::vector< ::com::sun::star::uno::Sequence<
93 ::com::sun::star::beans::PropertyValue> > aSortKeys;
95 public:
97 TYPEINFO();
99 XMLIndexBibliographyConfigurationContext(
100 SvXMLImport& rImport,
101 sal_uInt16 nPrfx,
102 const ::rtl::OUString& rLocalName,
103 const ::com::sun::star::uno::Reference<
104 ::com::sun::star::xml::sax::XAttributeList> & xAttrList);
106 ~XMLIndexBibliographyConfigurationContext();
108 protected:
110 virtual void StartElement(
111 const ::com::sun::star::uno::Reference<
112 ::com::sun::star::xml::sax::XAttributeList> & xAttrList);
114 virtual void CreateAndInsert( sal_Bool bOverwrite );
116 virtual SvXMLImportContext *CreateChildContext(
117 sal_uInt16 nPrefix,
118 const ::rtl::OUString& rLocalName,
119 const ::com::sun::star::uno::Reference<
120 ::com::sun::star::xml::sax::XAttributeList> & xAttrList );
122 void ProcessAttribute(
123 sal_uInt16 nPrefix,
124 const ::rtl::OUString sLocalName,
125 const ::rtl::OUString sValue);
128 }//end of namespace binfilter
129 #endif