summaryrefslogtreecommitdiff
path: root/xmloff/source/draw/ximpnote.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'xmloff/source/draw/ximpnote.cxx')
-rw-r--r--xmloff/source/draw/ximpnote.cxx145
1 files changed, 145 insertions, 0 deletions
diff --git a/xmloff/source/draw/ximpnote.cxx b/xmloff/source/draw/ximpnote.cxx
new file mode 100644
index 000000000000..39fcaa1603a0
--- /dev/null
+++ b/xmloff/source/draw/ximpnote.cxx
@@ -0,0 +1,145 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_xmloff.hxx"
+#include "ximpnote.hxx"
+#include <com/sun/star/presentation/XPresentationPage.hpp>
+
+using ::rtl::OUString;
+using ::rtl::OUStringBuffer;
+
+using namespace ::com::sun::star;
+
+//////////////////////////////////////////////////////////////////////////////
+
+SdXMLNotesContext::SdXMLNotesContext( SdXMLImport& rImport,
+ USHORT nPrfx, const OUString& rLocalName,
+ const com::sun::star::uno::Reference< com::sun::star::xml::sax::XAttributeList>& xAttrList,
+ uno::Reference< drawing::XShapes >& rShapes)
+: SdXMLGenericPageContext( rImport, nPrfx, rLocalName, xAttrList, rShapes )
+{
+ OUString sStyleName;
+
+ const sal_Int16 nAttrCount = xAttrList.is() ? xAttrList->getLength() : 0;
+ for(sal_Int16 i=0; i < nAttrCount; i++)
+ {
+ OUString sAttrName = xAttrList->getNameByIndex( i );
+ OUString aLocalName;
+ sal_uInt16 nPrefix = GetSdImport().GetNamespaceMap().GetKeyByAttrName( sAttrName, &aLocalName );
+ OUString sValue = xAttrList->getValueByIndex( i );
+ const SvXMLTokenMap& rAttrTokenMap = GetSdImport().GetMasterPageAttrTokenMap();
+
+ switch(rAttrTokenMap.Get(nPrefix, aLocalName))
+ {
+ case XML_TOK_MASTERPAGE_PAGE_MASTER_NAME:
+ {
+ msPageMasterName = sValue;
+ break;
+ }
+ case XML_TOK_MASTERPAGE_STYLE_NAME:
+ {
+ sStyleName = sValue;
+ break;
+ }
+ case XML_TOK_MASTERPAGE_USE_HEADER_NAME:
+ {
+ maUseHeaderDeclName = sValue;
+ break;
+ }
+ case XML_TOK_MASTERPAGE_USE_FOOTER_NAME:
+ {
+ maUseFooterDeclName = sValue;
+ break;
+ }
+ case XML_TOK_MASTERPAGE_USE_DATE_TIME_NAME:
+ {
+ maUseDateTimeDeclName = sValue;
+ break;
+ }
+
+ }
+ }
+
+ SetStyle( sStyleName );
+
+ // now delete all up-to-now contained shapes from this notes page
+ uno::Reference< drawing::XShape > xShape;
+ while(rShapes->getCount())
+ {
+ rShapes->getByIndex(0L) >>= xShape;
+ if(xShape.is())
+ rShapes->remove(xShape);
+ }
+
+ // set page-master?
+ if(msPageMasterName.getLength())
+ {
+ SetPageMaster( msPageMasterName );
+ }
+}
+
+//////////////////////////////////////////////////////////////////////////////
+
+SdXMLNotesContext::~SdXMLNotesContext()
+{
+}
+
+//////////////////////////////////////////////////////////////////////////////
+
+SvXMLImportContext *SdXMLNotesContext::CreateChildContext( USHORT nPrefix,
+ const OUString& rLocalName,
+ const uno::Reference< xml::sax::XAttributeList>& xAttrList )
+{
+ // OK, notes page is set on base class, objects can be imported on notes page
+ SvXMLImportContext *pContext = 0L;
+
+ // some special objects inside presentation:notes context
+ // ...
+
+
+
+
+
+
+
+ // call parent when no own context was created
+ if(!pContext)
+ pContext = SdXMLGenericPageContext::CreateChildContext(nPrefix, rLocalName, xAttrList);
+
+ return pContext;
+}
+
+//////////////////////////////////////////////////////////////////////////////
+
+void SdXMLNotesContext::EndElement()
+{
+ SdXMLGenericPageContext::EndElement();
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */