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 24 #ifndef SC_XMLTEXTPCONTEXT_HXX 25 #define SC_XMLTEXTPCONTEXT_HXX 26 27 #include <xmloff/xmlictxt.hxx> 28 #include <rtl/ustrbuf.hxx> 29 30 class ScXMLImport; 31 class ScXMLTableRowCellContext; 32 33 class ScXMLTextPContext : public SvXMLImportContext 34 { 35 ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList> xAttrList; 36 SvXMLImportContext* pTextPContext; 37 ScXMLTableRowCellContext* pCellContext; 38 rtl::OUString sLName; 39 rtl::OUString sSimpleContent; // copy of the first Character call's argument 40 rtl::OUStringBuffer* pContentBuffer; // used if there's more than one string 41 sal_uInt16 nPrefix; 42 sal_Bool bIsOwn; 43 GetScImport() const44 const ScXMLImport& GetScImport() const { return (const ScXMLImport&)GetImport(); } GetScImport()45 ScXMLImport& GetScImport() { return (ScXMLImport&)GetImport(); } 46 47 public: 48 ScXMLTextPContext( ScXMLImport& rImport, sal_uInt16 nPrfx, 49 const ::rtl::OUString& rLName, 50 const ::com::sun::star::uno::Reference< 51 ::com::sun::star::xml::sax::XAttributeList>& xAttrList, 52 ScXMLTableRowCellContext* pCellContext); 53 54 virtual ~ScXMLTextPContext(); 55 56 virtual SvXMLImportContext *CreateChildContext( sal_uInt16 nPrefix, 57 const ::rtl::OUString& rLocalName, 58 const ::com::sun::star::uno::Reference< 59 ::com::sun::star::xml::sax::XAttributeList>& xAttrList ); 60 61 virtual void Characters( const ::rtl::OUString& rChars ); 62 63 virtual void EndElement(); 64 65 void AddSpaces(sal_Int32 nSpaceCount); 66 }; 67 68 #endif 69