summaryrefslogtreecommitdiff
path: root/hwpfilter/source/hwpreader.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'hwpfilter/source/hwpreader.hxx')
-rw-r--r--hwpfilter/source/hwpreader.hxx111
1 files changed, 59 insertions, 52 deletions
diff --git a/hwpfilter/source/hwpreader.hxx b/hwpfilter/source/hwpreader.hxx
index 7642d9324981..4638ffb5aa57 100644
--- a/hwpfilter/source/hwpreader.hxx
+++ b/hwpfilter/source/hwpreader.hxx
@@ -17,12 +17,15 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#ifndef INCLUDED_HWPFILTER_SOURCE_HWPREADER_HXX
-#define INCLUDED_HWPFILTER_SOURCE_HWPREADER_HXX
+#pragma once
+
+#include <sal/config.h>
#include <errno.h>
#include <stdio.h>
#include <string.h>
+
+#include <rtl/ustring.hxx>
#include <sal/alloca.h>
#include <com/sun/star/lang/XServiceInfo.hpp>
@@ -44,15 +47,6 @@
#include <cppuhelper/weak.hxx>
#include <memory>
-using namespace ::cppu;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::io;
-using namespace ::com::sun::star::registry;
-using namespace ::com::sun::star::document;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::xml::sax;
-
#include <assert.h>
#include <unotools/mediadescriptor.hxx>
@@ -65,7 +59,16 @@ using namespace ::com::sun::star::xml::sax;
#include "drawdef.h"
#include "attributes.hxx"
-#define WRITER_IMPORTER_NAME "com.sun.star.comp.Writer.XMLImporter"
+using namespace ::cppu;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::io;
+using namespace ::com::sun::star::registry;
+using namespace ::com::sun::star::document;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::xml::sax;
+
+inline constexpr OUString WRITER_IMPORTER_NAME = u"com.sun.star.comp.Writer.XMLImporter"_ustr;
struct HwpReaderPrivate;
/**
@@ -73,7 +76,6 @@ struct HwpReaderPrivate;
*/
class HwpReader : public WeakImplHelper<XFilter>
{
-
public:
HwpReader();
virtual ~HwpReader() override;
@@ -82,22 +84,26 @@ public:
/**
* parseStream does Parser-startup initializations
*/
- virtual sal_Bool SAL_CALL filter(const Sequence< PropertyValue >& aDescriptor) override;
+ virtual sal_Bool SAL_CALL filter(const Sequence<PropertyValue>& aDescriptor) override;
virtual void SAL_CALL cancel() override {}
- void setDocumentHandler(Reference< XDocumentHandler > const & xHandler)
+ void setDocumentHandler(Reference<XDocumentHandler> const& xHandler)
{
m_rxDocumentHandler = xHandler;
}
+
+ bool importHStream(std::unique_ptr<HStream> stream);
+
private:
- Reference< XDocumentHandler > m_rxDocumentHandler;
+ Reference<XDocumentHandler> m_rxDocumentHandler;
rtl::Reference<AttributeListImpl> mxList;
HWPFile hwpfile;
std::unique_ptr<HwpReaderPrivate> d;
+
private:
/* -------- Document Parsing --------- */
void makeMeta();
void makeStyles();
- void makeDrawMiscStyle(HWPDrawingObject *);
+ void makeDrawMiscStyle(HWPDrawingObject*);
void makeAutoStyles();
void makeMasterStyles();
void makeBody();
@@ -105,50 +111,51 @@ private:
void makeTextDecls();
/* -------- Paragraph Parsing --------- */
- void parsePara(HWPPara *para);
- void make_text_p0(HWPPara *para, bool bParaStart);
- void make_text_p1(HWPPara *para, bool bParaStart);
- void make_text_p3(HWPPara *para, bool bParaStart);
+ void parsePara(HWPPara* para);
+ void make_text_p0(HWPPara* para, bool bParaStart);
+ void make_text_p1(HWPPara* para, bool bParaStart);
+ void make_text_p3(HWPPara* para, bool bParaStart);
/* -------- rDocument->characters(x) --------- */
- void makeChars(hchar_string & rStr);
+ void makeChars(hchar_string& rStr);
/* -------- Special Char Parsing --------- */
- void makeFieldCode(hchar_string const & rStr, FieldCode const *hbox); //6
- void makeBookmark(Bookmark const *hbox); //6
- void makeDateFormat(DateCode *hbox); //7
- void makeDateCode(DateCode *hbox); //8
- void makeTab(); //9
- void makeTable(TxtBox *hbox);
- void makeTextBox(TxtBox *hbox);
- void makeFormula(TxtBox *hbox);
- void makeHyperText(TxtBox *hbox);
- void makePicture(Picture *hbox);
- void makePictureDRAW(HWPDrawingObject *drawobj, Picture *hbox);
+ void makeFieldCode(hchar_string const& rStr, FieldCode const* hbox); //6
+ void makeBookmark(Bookmark const* hbox); //6
+ void makeDateFormat(DateCode* hbox); //7
+ void makeDateCode(DateCode* hbox); //8
+ void makeTab(); //9
+ void makeTable(TxtBox* hbox);
+ void makeTextBox(TxtBox* hbox);
+ void makeFormula(TxtBox* hbox);
+ void makeHyperText(TxtBox* hbox);
+ void makePicture(Picture* hbox);
+ void makePictureDRAW(HWPDrawingObject* drawobj, const Picture* hbox);
void makeLine();
- void makeHidden(Hidden *hbox);
- void makeFootnote(Footnote *hbox);
- void makeAutoNum(AutoNum const *hbox);
+ void makeHidden(Hidden* hbox);
+ void makeFootnote(Footnote* hbox);
+ void makeAutoNum(AutoNum const* hbox);
void makeShowPageNum();
- void makeMailMerge(MailMerge *hbox);
- void makeOutline(Outline const *hbox);
+ void makeMailMerge(MailMerge* hbox);
+ void makeOutline(Outline const* hbox);
/* --------- Styles Parsing ------------ */
void makePageStyle();
- void makeColumns(ColumnDef const *);
- void makeTStyle(CharShape const *);
- void makePStyle(ParaShape const *);
- void makeFStyle(FBoxStyle *);
- void makeCaptionStyle(FBoxStyle *);
- void makeDrawStyle(HWPDrawingObject *,FBoxStyle *);
- void makeTableStyle(Table *);
- void parseCharShape(CharShape const *);
- void parseParaShape(ParaShape const *);
- static char* getTStyleName(int, char *);
- static char* getPStyleName(int, char *);
+ void makeColumns(ColumnDef const*);
+ void makeTStyle(CharShape const*);
+ void makePStyle(ParaShape const*);
+ void makeFStyle(FBoxStyle*);
+ void makeCaptionStyle(FBoxStyle*);
+ void makeDrawStyle(HWPDrawingObject*, FBoxStyle*);
+ void makeTableStyle(Table*);
+ void parseCharShape(CharShape const*);
+ void parseParaShape(ParaShape const*);
+ static OUString getTStyleName(int);
+ static OUString getPStyleName(int);
+
+ void startEl(const OUString& el);
+ void endEl(const OUString& el);
+ void chars(const OUString& s);
};
-
-#endif
-
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */