summaryrefslogtreecommitdiff
path: root/writerfilter/source/rtftok/rtfdocumentimpl.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'writerfilter/source/rtftok/rtfdocumentimpl.hxx')
-rw-r--r--writerfilter/source/rtftok/rtfdocumentimpl.hxx189
1 files changed, 22 insertions, 167 deletions
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.hxx b/writerfilter/source/rtftok/rtfdocumentimpl.hxx
index 0d77b6e95198..5c39af1a115e 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.hxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.hxx
@@ -24,149 +24,12 @@
#include <rtftok/RTFDocument.hxx>
#include <rtfreferencetable.hxx>
#include <rtfsprm.hxx>
+#include <rtflistener.hxx>
class SvStream;
namespace writerfilter {
namespace rtftok {
- enum RTFInternalState
- {
- INTERNAL_NORMAL,
- INTERNAL_BIN,
- INTERNAL_HEX
- };
-
- // Note that this is not a 1:1 mapping between destination control
- // words, e.g. RTF_PICT gets mapped to DESTINATION_PICT or
- // DESTINATION_SHAPEPROPERTYVALUEPICT, etc.
- enum RTFDestinationState
- {
- DESTINATION_NORMAL,
- DESTINATION_SKIP,
- DESTINATION_FONTTABLE,
- DESTINATION_FONTENTRY,
- DESTINATION_COLORTABLE,
- DESTINATION_STYLESHEET,
- DESTINATION_STYLEENTRY,
- DESTINATION_FIELD,
- DESTINATION_FIELDINSTRUCTION,
- DESTINATION_FIELDRESULT,
- DESTINATION_LISTTABLE,
- DESTINATION_LISTPICTURE,
- DESTINATION_LISTENTRY,
- DESTINATION_LISTOVERRIDETABLE,
- DESTINATION_LISTOVERRIDEENTRY,
- DESTINATION_LISTLEVEL,
- DESTINATION_LEVELTEXT,
- DESTINATION_LEVELNUMBERS,
- DESTINATION_SHPPICT,
- DESTINATION_PICT,
- DESTINATION_PICPROP,
- DESTINATION_SHAPEPROPERTY,
- DESTINATION_SHAPEPROPERTYNAME,
- DESTINATION_SHAPEPROPERTYVALUE,
- DESTINATION_SHAPE,
- DESTINATION_SHAPEINSTRUCTION,
- DESTINATION_SHAPEPROPERTYVALUEPICT,
- DESTINATION_NESTEDTABLEPROPERTIES,
- DESTINATION_FOOTNOTE,
- DESTINATION_BOOKMARKSTART,
- DESTINATION_BOOKMARKEND,
- DESTINATION_REVISIONTABLE,
- DESTINATION_REVISIONENTRY,
- DESTINATION_SHAPETEXT,
- DESTINATION_FORMFIELD,
- DESTINATION_FORMFIELDNAME,
- DESTINATION_FORMFIELDLIST,
- DESTINATION_DATAFIELD,
- DESTINATION_INFO,
- DESTINATION_CREATIONTIME,
- DESTINATION_REVISIONTIME,
- DESTINATION_PRINTTIME,
- DESTINATION_AUTHOR,
- DESTINATION_KEYWORDS,
- DESTINATION_OPERATOR,
- DESTINATION_COMPANY,
- DESTINATION_COMMENT,
- DESTINATION_OBJECT,
- DESTINATION_OBJDATA,
- DESTINATION_RESULT,
- DESTINATION_ANNOTATIONDATE,
- DESTINATION_ANNOTATIONAUTHOR,
- DESTINATION_FALT,
- DESTINATION_FLYMAINCONTENT,
- DESTINATION_DRAWINGOBJECT,
- DESTINATION_PARAGRAPHNUMBERING,
- DESTINATION_PARAGRAPHNUMBERING_TEXTBEFORE,
- DESTINATION_PARAGRAPHNUMBERING_TEXTAFTER,
- DESTINATION_TITLE,
- DESTINATION_SUBJECT,
- DESTINATION_DOCCOMM,
- DESTINATION_ATNID,
- DESTINATION_MOMATH,
- DESTINATION_MR,
- DESTINATION_MF,
- DESTINATION_MFPR,
- DESTINATION_MCTRLPR,
- DESTINATION_MNUM,
- DESTINATION_MDEN,
- DESTINATION_MACC,
- DESTINATION_MACCPR,
- DESTINATION_MCHR,
- DESTINATION_MPOS,
- DESTINATION_MVERTJC,
- DESTINATION_MSTRIKEH,
- DESTINATION_MDEGHIDE,
- DESTINATION_ME,
- DESTINATION_MBAR,
- DESTINATION_MBARPR,
- DESTINATION_MD,
- DESTINATION_MDPR,
- DESTINATION_MBEGCHR,
- DESTINATION_MSEPCHR,
- DESTINATION_MENDCHR,
- DESTINATION_MFUNC,
- DESTINATION_MFUNCPR,
- DESTINATION_MFNAME,
- DESTINATION_MLIMLOW,
- DESTINATION_MLIMLOWPR,
- DESTINATION_MLIM,
- DESTINATION_MM,
- DESTINATION_MMPR,
- DESTINATION_MMR,
- DESTINATION_MNARY,
- DESTINATION_MNARYPR,
- DESTINATION_MSUB,
- DESTINATION_MSUP,
- DESTINATION_MSUBHIDE,
- DESTINATION_MSUPHIDE,
- DESTINATION_MLIMUPP,
- DESTINATION_MLIMUPPPR,
- DESTINATION_MGROUPCHR,
- DESTINATION_MGROUPCHRPR,
- DESTINATION_MBORDERBOX,
- DESTINATION_MBORDERBOXPR,
- DESTINATION_MRAD,
- DESTINATION_MRADPR,
- DESTINATION_MDEG,
- DESTINATION_MSSUB,
- DESTINATION_MSSUBPR,
- DESTINATION_MSSUP,
- DESTINATION_MSSUPPR,
- DESTINATION_MSSUBSUP,
- DESTINATION_MSSUBSUPPR,
- DESTINATION_MSPRE,
- DESTINATION_MSPREPR,
- DESTINATION_MTYPE,
- DESTINATION_MGROW,
- DESTINATION_MBOX,
- DESTINATION_MEQARR,
- DESTINATION_UPR,
- DESTINATION_LFOLEVEL,
- DESTINATION_BACKGROUND,
- DESTINATION_SHAPEGROUP,
- };
-
enum RTFBorderState
{
BORDER_NONE,
@@ -176,16 +39,6 @@ namespace writerfilter {
BORDER_PAGE
};
- enum RTFErrors
- {
- ERROR_OK,
- ERROR_GROUP_UNDER,
- ERROR_GROUP_OVER,
- ERROR_EOF,
- ERROR_HEX_INVALID,
- ERROR_CHAR_OVER
- };
-
/// Minimalistic buffer of elements for nested cells.
enum RTFBufferTypes
{
@@ -417,7 +270,7 @@ namespace writerfilter {
/// Implementation of the RTFDocument interface.
class RTFDocumentImpl
- : public RTFDocument
+ : public RTFDocument, public RTFListener
{
public:
typedef ::boost::shared_ptr<RTFDocumentImpl> Pointer_t;
@@ -427,39 +280,41 @@ namespace writerfilter {
uno::Reference<frame::XFrame> const& xFrame,
uno::Reference<task::XStatusIndicator> const& xStatusIndicator);
virtual ~RTFDocumentImpl();
+
+ // RTFDocument
virtual void resolve(Stream & rHandler);
virtual std::string getType() const;
+ // RTFListener
+ virtual int dispatchDestination(RTFKeyword nKeyword);
+ virtual int dispatchFlag(RTFKeyword nKeyword);
+ virtual int dispatchSymbol(RTFKeyword nKeyword);
+ virtual int dispatchToggle(RTFKeyword nKeyword, bool bParam, int nParam);
+ virtual int dispatchValue(RTFKeyword nKeyword, int nParam);
+ virtual int resolveChars(char ch);
+ virtual int pushState();
+ virtual int popState();
+ virtual RTFDestinationState getDestinationState();
+ virtual void setDestinationState(RTFDestinationState nDestinationState);
+ virtual RTFInternalState getInternalState();
+ virtual void setInternalState(RTFInternalState nInternalState);
+ virtual bool getSkipUnknown();
+ virtual void setSkipUnknown(bool bSkipUnknown);
+ virtual void finishSubstream();
+ virtual bool isSubstream() const;
+
Stream& Mapper();
void setSubstream(bool bIsSubtream);
void setSuperstream(RTFDocumentImpl *pSuperstream);
void setAuthor(OUString& rAuthor);
void setAuthorInitials(OUString& rAuthorInitials);
- bool isSubstream() const;
- void finishSubstream();
void setIgnoreFirst(OUString& rIgnoreFirst);
void seek(sal_uInt32 nPos);
uno::Reference<lang::XMultiServiceFactory> getModelFactory();
bool isInBackground();
- RTFInternalState getInternalState();
- void setInternalState(RTFInternalState nInternalState);
- RTFDestinationState getDestinationState();
- void setDestinationState(RTFDestinationState nDestinationState);
void setDestinationText(OUString& rString);
/// Resolve a picture: If not inline, then anchored.
int resolvePict(bool bInline);
- bool getSkipUnknown();
- void setSkipUnknown(bool bSkipUnknown);
-
- // These callbacks are invoked by the tokenizer.
- int resolveChars(char ch);
- int pushState();
- int popState();
- int dispatchFlag(RTFKeyword nKeyword);
- int dispatchDestination(RTFKeyword nKeyword);
- int dispatchSymbol(RTFKeyword nKeyword);
- int dispatchToggle(RTFKeyword nKeyword, bool bParam, int nParam);
- int dispatchValue(RTFKeyword nKeyword, int nParam);
/// If this is the first run of the document, starts the initial paragraph.
void checkFirstRun();