diff options
Diffstat (limited to 'writerfilter/source/rtftok/rtfcontrolwords.hxx')
-rw-r--r-- | writerfilter/source/rtftok/rtfcontrolwords.hxx | 2049 |
1 files changed, 2049 insertions, 0 deletions
diff --git a/writerfilter/source/rtftok/rtfcontrolwords.hxx b/writerfilter/source/rtftok/rtfcontrolwords.hxx new file mode 100644 index 000000000..c1480ffb0 --- /dev/null +++ b/writerfilter/source/rtftok/rtfcontrolwords.hxx @@ -0,0 +1,2049 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#pragma once + +namespace writerfilter::rtftok +{ +/** + * An RTF destination state is the last open destination control word. + * + * 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. + */ +enum class Destination +{ + NORMAL, + SKIP, + FONTTABLE, + FONTENTRY, + COLORTABLE, + STYLESHEET, + STYLEENTRY, + FIELD, + FIELDINSTRUCTION, + FIELDRESULT, + LISTTABLE, + LISTPICTURE, + LISTENTRY, + LISTNAME, + LISTOVERRIDETABLE, + LISTOVERRIDEENTRY, + LISTLEVEL, + LEVELTEXT, + LEVELNUMBERS, + SHPPICT, + PICT, + PICPROP, + SHAPEPROPERTY, + SHAPEPROPERTYNAME, + SHAPEPROPERTYVALUE, + SHAPE, + SHAPEINSTRUCTION, + SHAPEPROPERTYVALUEPICT, + NESTEDTABLEPROPERTIES, + FOOTNOTE, + BOOKMARKSTART, + BOOKMARKEND, + REVISIONTABLE, + REVISIONENTRY, + SHAPETEXT, + FORMFIELD, + FORMFIELDNAME, + FORMFIELDLIST, + DATAFIELD, + INFO, + CREATIONTIME, + REVISIONTIME, + PRINTTIME, + AUTHOR, + KEYWORDS, + OPERATOR, + COMPANY, + COMMENT, + OBJECT, + OBJDATA, + OBJCLASS, + RESULT, + ANNOTATIONDATE, + ANNOTATIONAUTHOR, + ANNOTATIONREFERENCE, + FALT, + FLYMAINCONTENT, + DRAWINGOBJECT, + PARAGRAPHNUMBERING, + PARAGRAPHNUMBERING_TEXTBEFORE, + PARAGRAPHNUMBERING_TEXTAFTER, + TITLE, + SUBJECT, + DOCCOMM, + ATNID, + ANNOTATIONREFERENCESTART, + ANNOTATIONREFERENCEEND, + MOMATH, + MR, + MF, + MFPR, + MCTRLPR, + MNUM, + MDEN, + MACC, + MACCPR, + MCHR, + MPOS, + MVERTJC, + MSTRIKEH, + MDEGHIDE, + ME, + MBAR, + MBARPR, + MD, + MDPR, + MBEGCHR, + MSEPCHR, + MENDCHR, + MFUNC, + MFUNCPR, + MFNAME, + MLIMLOW, + MLIMLOWPR, + MLIM, + MM, + MMPR, + MMR, + MNARY, + MNARYPR, + MSUB, + MSUP, + MSUBHIDE, + MSUPHIDE, + MLIMUPP, + MLIMUPPPR, + MGROUPCHR, + MGROUPCHRPR, + MBORDERBOX, + MBORDERBOXPR, + MRAD, + MRADPR, + MDEG, + MSSUB, + MSSUBPR, + MSSUP, + MSSUPPR, + MSSUBSUP, + MSSUBSUPPR, + MSPRE, + MSPREPR, + MTYPE, + MGROW, + MBOX, + MEQARR, + UPR, + LFOLEVEL, + BACKGROUND, + SHAPEGROUP, + FOOTNOTESEPARATOR, + INDEXENTRY, + TOCENTRY, + USERPROPS, + PROPNAME, + STATICVAL, + GENERATOR, + DOCVAR, +}; + +enum class RTFKeyword +{ + invalid = -1, + HEXCHAR, + OPTHYPH, + IGNORE, + SUBENTRY, + BACKSLASH, + NOBRKHYPH, + LBRACE, + FORMULA, + RBRACE, + NOBREAK, + AB, + ABSH, + ABSLOCK, + ABSNOOVRLP, + ABSW, + ACAPS, + ACCCIRCLE, + ACCCOMMA, + ACCDOT, + ACCNONE, + ACCUNDERDOT, + ACF, + ADEFF, + ADDITIVE, + ADEFLANG, + ADJUSTRIGHT, + ADN, + AENDDOC, + AENDNOTES, + AEXPND, + AF, + AFELEV, + AFS, + AFTNBJ, + AFTNCN, + AFTNNALC, + AFTNNAR, + AFTNNAUC, + AFTNNCHI, + AFTNNCHOSUNG, + AFTNNCNUM, + AFTNNDBAR, + AFTNNDBNUM, + AFTNNDBNUMD, + AFTNNDBNUMK, + AFTNNDBNUMT, + AFTNNGANADA, + AFTNNGBNUM, + AFTNNGBNUMD, + AFTNNGBNUMK, + AFTNNGBNUML, + AFTNNRLC, + AFTNNRUC, + AFTNNZODIAC, + AFTNNZODIACD, + AFTNNZODIACL, + AFTNRESTART, + AFTNRSTCONT, + AFTNSEP, + AFTNSEPC, + AFTNSTART, + AFTNTJ, + AI, + ALANG, + ALLOWFIELDENDSEL, + ALLPROT, + ALNTBLIND, + ALT, + ANIMTEXT, + ANNOTATION, + ANNOTPROT, + ANSI, + ANSICPG, + AOUTL, + APPLYBRKRULES, + ASCAPS, + ASHAD, + ASIANBRKRULE, + ASPALPHA, + ASPNUM, + ASTRIKE, + ATNAUTHOR, + ATNDATE, + ATNICN, + ATNID, + ATNPARENT, + ATNREF, + ATNTIME, + ATRFEND, + ATRFSTART, + AUL, + AULD, + AULDB, + AULNONE, + AULW, + AUP, + AUTHOR, + AUTOFMTOVERRIDE, + B, + BACKGROUND, + BDBFHDR, + BDRRLSWSIX, + BGBDIAG, + BGCROSS, + BGDCROSS, + BGDKBDIAG, + BGDKCROSS, + BGDKDCROSS, + BGDKFDIAG, + BGDKHORIZ, + BGDKVERT, + BGFDIAG, + BGHORIZ, + BGVERT, + BIN, + BINFSXN, + BINSXN, + BKMKCOLF, + BKMKCOLL, + BKMKEND, + BKMKPUB, + BKMKSTART, + BLIPTAG, + BLIPUID, + BLIPUPI, + BLUE, + BOOKFOLD, + BOOKFOLDREV, + BOOKFOLDSHEETS, + BOX, + BRDRART, + BRDRB, + BRDRBAR, + BRDRBTW, + BRDRCF, + BRDRDASH, + BRDRDASHD, + BRDRDASHDD, + BRDRDASHDOTSTR, + BRDRDASHSM, + BRDRDB, + BRDRDOT, + BRDREMBOSS, + BRDRENGRAVE, + BRDRFRAME, + BRDRHAIR, + BRDRINSET, + BRDRL, + BRDRNIL, + BRDRNONE, + BRDROUTSET, + BRDRR, + BRDRS, + BRDRSH, + BRDRT, + BRDRTBL, + BRDRTH, + BRDRTHTNLG, + BRDRTHTNMG, + BRDRTHTNSG, + BRDRTNTHLG, + BRDRTNTHMG, + BRDRTNTHSG, + BRDRTNTHTNLG, + BRDRTNTHTNMG, + BRDRTNTHTNSG, + BRDRTRIPLE, + BRDRW, + BRDRWAVY, + BRDRWAVYDB, + BRKFRM, + BRSP, + BULLET, + BUPTIM, + BXE, + CACCENTFIVE, + CACCENTFOUR, + CACCENTONE, + CACCENTSIX, + CACCENTTHREE, + CACCENTTWO, + CACHEDCOLBAL, + CAPS, + CATEGORY, + CB, + CBACKGROUNDONE, + CBACKGROUNDTWO, + CBPAT, + CCHS, + CELL, + CELLX, + CF, + CFOLLOWEDHYPERLINK, + CFPAT, + CGRID, + CHARRSID, + CHARSCALEX, + CHATN, + CHBGBDIAG, + CHBGCROSS, + CHBGDCROSS, + CHBGDKBDIAG, + CHBGDKCROSS, + CHBGDKDCROSS, + CHBGDKFDIAG, + CHBGDKHORIZ, + CHBGDKVERT, + CHBGFDIAG, + CHBGHORIZ, + CHBGVERT, + CHBRDR, + CHCBPAT, + CHCFPAT, + CHDATE, + CHDPA, + CHDPL, + CHFTN, + CHFTNSEP, + CHFTNSEPC, + CHPGN, + CHHRES, + CHSHDNG, + CHTIME, + CHYPERLINK, + CLBGBDIAG, + CLBGCROSS, + CLBGDCROSS, + CLBGDKBDIAG, + CLBGDKCROSS, + CLBGDKDCROSS, + CLBGDKFDIAG, + CLBGDKHOR, + CLBGDKVERT, + CLBGFDIAG, + CLBGHORIZ, + CLBGVERT, + CLBRDRB, + CLBRDRL, + CLBRDRR, + CLBRDRT, + CLCBPAT, + CLCBPATRAW, + CLCFPAT, + CLCFPATRAW, + CLDEL, + CLDELAUTH, + CLDELDTTM, + CLDGLL, + CLDGLU, + CLFITTEXT, + CLFTSWIDTH, + CLHIDEMARK, + CLINS, + CLINSAUTH, + CLINSDTTM, + CLMGF, + CLMRG, + CLMRGD, + CLMRGDAUTH, + CLMRGDDTTM, + CLMRGDR, + CLNOWRAP, + CLPADB, + CLPADFB, + CLPADFL, + CLPADFR, + CLPADFT, + CLPADL, + CLPADR, + CLPADT, + CLSPB, + CLSPFB, + CLSPFL, + CLSPFR, + CLSPFT, + CLSPL, + CLSPR, + CLSPT, + CLSHDNG, + CLSHDNGRAW, + CLSHDRAWNIL, + CLSPLIT, + CLSPLITR, + CLTXBTLR, + CLTXLRTB, + CLTXLRTBV, + CLTXTBRL, + CLTXTBRLV, + CLVERTALB, + CLVERTALC, + CLVERTALT, + CLVMGF, + CLVMRG, + CLWWIDTH, + CMAINDARKONE, + CMAINDARKTWO, + CMAINLIGHTONE, + CMAINLIGHTTWO, + COLLAPSED, + COLNO, + COLORSCHEMEMAPPING, + COLORTBL, + COLS, + COLSR, + COLSX, + COLUMN, + COLW, + COMMENT, + COMPANY, + CONTEXTUALSPACE, + CPG, + CRAUTH, + CRDATE, + CREATIM, + CS, + CSHADE, + CTEXTONE, + CTEXTTWO, + CTINT, + CTRL, + CTS, + CUFI, + CULI, + CURI, + CVMME, + DATAFIELD, + DATASTORE, + DATE, + DBCH, + DEFCHP, + DEFF, + DEFFORMAT, + DEFLANG, + DEFLANGFE, + DEFPAP, + DEFSHP, + DEFTAB, + DELETED, + DELRSID, + DFRAUTH, + DFRDATE, + DFRMTXTX, + DFRMTXTY, + DFRSTART, + DFRSTOP, + DFRXST, + DGHORIGIN, + DGHSHOW, + DGHSPACE, + DGMARGIN, + DGSNAP, + DGVORIGIN, + DGVSHOW, + DGVSPACE, + DIBITMAP, + DISABLED, + DN, + DNTBLNSBDB, + DO, + DOBXCOLUMN, + DOBXMARGIN, + DOBXPAGE, + DOBYMARGIN, + DOBYPAGE, + DOBYPARA, + DOCCOMM, + DOCTEMP, + DOCTYPE, + DOCVAR, + DODHGT, + DOLOCK, + DONOTEMBEDLINGDATA, + DONOTEMBEDSYSFONT, + DONOTSHOWCOMMENTS, + DONOTSHOWINSDEL, + DONOTSHOWMARKUP, + DONOTSHOWPROPS, + DPAENDHOL, + DPAENDL, + DPAENDSOL, + DPAENDW, + DPARC, + DPARCFLIPX, + DPARCFLIPY, + DPASTARTHOL, + DPASTARTL, + DPASTARTSOL, + DPASTARTW, + DPCALLOUT, + DPCOA, + DPCOACCENT, + DPCOBESTFIT, + DPCOBORDER, + DPCODABS, + DPCODBOTTOM, + DPCODCENTER, + DPCODESCENT, + DPCODTOP, + DPCOLENGTH, + DPCOMINUSX, + DPCOMINUSY, + DPCOOFFSET, + DPCOSMARTA, + DPCOTDOUBLE, + DPCOTRIGHT, + DPCOTSINGLE, + DPCOTTRIPLE, + DPCOUNT, + DPELLIPSE, + DPENDGROUP, + DPFILLBGCB, + DPFILLBGCG, + DPFILLBGCR, + DPFILLBGGRAY, + DPFILLBGPAL, + DPFILLFGCB, + DPFILLFGCG, + DPFILLFGCR, + DPFILLFGGRAY, + DPFILLFGPAL, + DPFILLPAT, + DPGROUP, + DPLINE, + DPLINECOB, + DPLINECOG, + DPLINECOR, + DPLINEDADO, + DPLINEDADODO, + DPLINEDASH, + DPLINEDOT, + DPLINEGRAY, + DPLINEHOLLOW, + DPLINEPAL, + DPLINESOLID, + DPLINEW, + DPPOLYCOUNT, + DPPOLYGON, + DPPOLYLINE, + DPPTX, + DPPTY, + DPRECT, + DPROUNDR, + DPSHADOW, + DPSHADX, + DPSHADY, + DPTXBTLR, + DPTXBX, + DPTXBXMAR, + DPTXBXTEXT, + DPTXLRTB, + DPTXLRTBV, + DPTXTBRL, + DPTXTBRLV, + DPX, + DPXSIZE, + DPY, + DPYSIZE, + DROPCAPLI, + DROPCAPT, + DS, + DXFRTEXT, + DY, + EBCEND, + EBCSTART, + EDMINS, + EMBO, + EMDASH, + EMFBLIP, + EMSPACE, + ENDASH, + ENDDOC, + ENDNHERE, + ENDNOTES, + ENFORCEPROT, + ENSPACE, + EXPND, + EXPNDTW, + EXPSHRTN, + F, + FAAUTO, + FACENTER, + FACINGP, + FACTOIDNAME, + FAFIXED, + FAHANG, + FALT, + FAROMAN, + FAVAR, + FBIAS, + FBIDI, + FBIDIS, + FBIMAJOR, + FBIMINOR, + FCHARS, + FCHARSET, + FCS, + FDBMAJOR, + FDBMINOR, + FDECOR, + FELNBRELEV, + FET, + FETCH, + FFDEFRES, + FFDEFTEXT, + FFENTRYMCR, + FFEXITMCR, + FFFORMAT, + FFHASLISTBOX, + FFHELPTEXT, + FFHPS, + FFL, + FFMAXLEN, + FFNAME, + FFOWNHELP, + FFOWNSTAT, + FFPROT, + FFRECALC, + FFRES, + FFSIZE, + FFSTATTEXT, + FFTYPE, + FFTYPETXT, + FHIMAJOR, + FHIMINOR, + FI, + FID, + FIELD, + FILE, + FILETBL, + FITTEXT, + FJGOTHIC, + FJMINCHOU, + FLDALT, + FLDDIRTY, + FLDEDIT, + FLDINST, + FLDLOCK, + FLDPRIV, + FLDRSLT, + FLDTYPE, + FLOMAJOR, + FLOMINOR, + FMODERN, + FN, + FNAME, + FNETWORK, + FNIL, + FNONFILESYS, + FONTEMB, + FONTFILE, + FONTTBL, + FOOTER, + FOOTERF, + FOOTERL, + FOOTERR, + FOOTERY, + FOOTNOTE, + FORCEUPGRADE, + FORMDISP, + FORMFIELD, + FORMPROT, + FORMSHADE, + FOSNUM, + FPRQ, + FRACWIDTH, + FRELATIVE, + FRMTXBTLR, + FRMTXLRTB, + FRMTXLRTBV, + FRMTXTBRL, + FRMTXTBRLV, + FROMAN, + FROMHTML, + FROMTEXT, + FS, + FSCRIPT, + FSWISS, + FTECH, + FTNALT, + FTNBJ, + FTNCN, + FTNIL, + FTNLYTWNINE, + FTNNALC, + FTNNAR, + FTNNAUC, + FTNNCHI, + FTNNCHOSUNG, + FTNNCNUM, + FTNNDBAR, + FTNNDBNUM, + FTNNDBNUMD, + FTNNDBNUMK, + FTNNDBNUMT, + FTNNGANADA, + FTNNGBNUM, + FTNNGBNUMD, + FTNNGBNUMK, + FTNNGBNUML, + FTNNRLC, + FTNNRUC, + FTNNZODIAC, + FTNNZODIACD, + FTNNZODIACL, + FTNRESTART, + FTNRSTCONT, + FTNRSTPG, + FTNSEP, + FTNSEPC, + FTNSTART, + FTNTJ, + FTTRUETYPE, + FVALIDDOS, + FVALIDHPFS, + FVALIDMAC, + FVALIDNTFS, + G, + GCW, + GENERATOR, + GREEN, + GRFDOCEVENTS, + GRIDTBL, + GUTTER, + GUTTERPRL, + GUTTERSXN, + HEADER, + HEADERF, + HEADERL, + HEADERR, + HEADERY, + HICH, + HIGHLIGHT, + HL, + HLFR, + HLINKBASE, + HLLOC, + HLSRC, + HORZDOC, + HORZSECT, + HORZVERT, + HR, + HRES, + HRULE, + HSV, + HTMAUTSP, + HTMLBASE, + HTMLRTF, + HTMLTAG, + HWELEV, + HYPHAUTO, + HYPHCAPS, + HYPHCONSEC, + HYPHHOTZ, + HYPHPAR, + I, + ID, + IGNOREMIXEDCONTENT, + ILFOMACATCLNUP, + ILVL, + IMPR, + INDMIRROR, + INDRLSWELEVEN, + INFO, + INSRSID, + INTBL, + IPGP, + IROWBAND, + IROW, + ITAP, + IXE, + JCOMPRESS, + JEXPAND, + JIS, + JPEGBLIP, + JSKSU, + KEEP, + KEEPN, + KERNING, + KEYCODE, + KEYWORDS, + KRNPRSNET, + KSULANG, + JCLISTTAB, + LANDSCAPE, + LANG, + LANGFE, + LANGFENP, + LANGNP, + LASTROW, + LATENTSTYLES, + LBR, + LCHARS, + LDBLQUOTE, + LEVEL, + LEVELFOLLOW, + LEVELINDENT, + LEVELJC, + LEVELJCN, + LEVELLEGAL, + LEVELNFC, + LEVELNFCN, + LEVELNORESTART, + LEVELNUMBERS, + LEVELOLD, + LEVELPICTURE, + LEVELPICTURENOSIZE, + LEVELPREV, + LEVELPREVSPACE, + LEVELSPACE, + LEVELSTARTAT, + LEVELTEMPLATEID, + LEVELTEXT, + LFOLEVEL, + LI, + LINE, + LINEBETCOL, + LINECONT, + LINEMOD, + LINEPPAGE, + LINERESTART, + LINESTART, + LINESTARTS, + LINEX, + LINKSELF, + LINKSTYLES, + LINKVAL, + LIN, + LISA, + LISB, + LIST, + LISTHYBRID, + LISTID, + LISTLEVEL, + LISTNAME, + LISTOVERRIDE, + LISTOVERRIDECOUNT, + LISTOVERRIDEFORMAT, + LISTOVERRIDESTARTAT, + LISTOVERRIDETABLE, + LISTPICTURE, + LISTRESTARTHDN, + LISTSIMPLE, + LISTSTYLEID, + LISTSTYLENAME, + LISTTABLE, + LISTTEMPLATEID, + LISTTEXT, + LNBRKRULE, + LNDSCPSXN, + LNONGRID, + LOCH, + LQUOTE, + LS, + LSDLOCKED, + LSDLOCKEDDEF, + LSDLOCKEDEXCEPT, + LSDPRIORITY, + LSDPRIORITYDEF, + LSDQFORMAT, + LSDQFORMATDEF, + LSDSEMIHIDDEN, + LSDSEMIHIDDENDEF, + LSDSTIMAX, + LSDUNHIDEUSED, + LSDUNHIDEUSEDDEF, + LTRCH, + LTRDOC, + LTRMARK, + LTRPAR, + LTRROW, + LTRSECT, + LVLTENTATIVE, + LYTCALCTBLWD, + LYTEXCTTP, + LYTPRTMET, + LYTTBLRTGR, + MAC, + MACC, + MACCPR, + MACPICT, + MAILMERGE, + MAKEBACKUP, + MALN, + MALNSCR, + MANAGER, + MARGB, + MARGBSXN, + MARGL, + MARGLSXN, + MARGMIRROR, + MARGMIRSXN, + MARGPR, + MARGR, + MARGRSXN, + MARGSZ, + MARGT, + MARGTSXN, + MBAR, + MBARPR, + MBASEJC, + MBEGCHR, + MBORDERBOX, + MBORDERBOXPR, + MBOX, + MBOXPR, + MBRK, + MBRKBIN, + MBRKBINSUB, + MCGP, + MCGPRULE, + MCHR, + MCOUNT, + MCSP, + MCTRLPR, + MD, + MDEFJC, + MDEG, + MDEGHIDE, + MDEN, + MDIFF, + MDIFFSTY, + MDISPDEF, + MDPR, + ME, + MENDCHR, + MEQARR, + MEQARRPR, + MF, + MFNAME, + MFPR, + MFUNC, + MFUNCPR, + MGROUPCHR, + MGROUPCHRPR, + MGROW, + MHIDEBOT, + MHIDELEFT, + MHIDERIGHT, + MHIDETOP, + MHTMLTAG, + MIN, + MINTERSP, + MINTLIM, + MINTRASP, + MJC, + MLIM, + MLIMLOC, + MLIMLOW, + MLIMLOWPR, + MLIMUPP, + MLIMUPPPR, + MLIT, + MLMARGIN, + MM, + MMADDFIELDNAME, + MMATH, + MMATHFONT, + MMATHPICT, + MMATHPR, + MMATTACH, + MMAXDIST, + MMBLANKLINES, + MMC, + MMCJC, + MMCONNECTSTR, + MMCONNECTSTRDATA, + MMCPR, + MMCS, + MMDATASOURCE, + MMDATATYPEACCESS, + MMDATATYPEEXCEL, + MMDATATYPEFILE, + MMDATATYPEODBC, + MMDATATYPEODSO, + MMDATATYPEQT, + MMDEFAULTSQL, + MMDESTEMAIL, + MMDESTFAX, + MMDESTNEWDOC, + MMDESTPRINTER, + MMERRORS, + MMFTTYPEADDRESS, + MMFTTYPEBARCODE, + MMFTTYPEDBCOLUMN, + MMFTTYPEMAPPED, + MMFTTYPENULL, + MMFTTYPESALUTATION, + MMHEADERSOURCE, + MMJDSOTYPE, + MMLINKTOQUERY, + MMMAILSUBJECT, + MMMAINTYPECATALOG, + MMMAINTYPEEMAIL, + MMMAINTYPEENVELOPES, + MMMAINTYPEFAX, + MMMAINTYPELABELS, + MMMAINTYPELETTERS, + MMODSO, + MMODSOACTIVE, + MMODSOCOLDELIM, + MMODSOCOLUMN, + MMODSODYNADDR, + MMODSOFHDR, + MMODSOFILTER, + MMODSOFLDMPDATA, + MMODSOFMCOLUMN, + MMODSOHASH, + MMODSOLID, + MMODSOMAPPEDNAME, + MMODSONAME, + MMODSORECIPDATA, + MMODSOSORT, + MMODSOSRC, + MMODSOTABLE, + MMODSOUDL, + MMODSOUDLDATA, + MMODSOUNIQUETAG, + MMPR, + MMQUERY, + MMR, + MMRECCUR, + MMSHOWDATA, + MNARY, + MNARYLIM, + MNARYPR, + MNOBREAK, + MNOR, + MNUM, + MO, + MOBJDIST, + MOMATH, + MOMATHPARA, + MOMATHPARAPR, + MOPEMU, + MPHANT, + MPHANTPR, + MPLCHIDE, + MPOS, + MPOSTSP, + MPRESP, + MR, + MRAD, + MRADPR, + MRMARGIN, + MRPR, + MRSP, + MRSPRULE, + MSCR, + MSEPCHR, + MSHOW, + MSHP, + MSMALLFRAC, + MSMCAP, + MSPRE, + MSPREPR, + MSSUB, + MSSUBPR, + MSSUBSUP, + MSSUBSUPPR, + MSSUP, + MSSUPPR, + MSTRIKEBLTR, + MSTRIKEH, + MSTRIKETLBR, + MSTRIKEV, + MSTY, + MSUB, + MSUBHIDE, + MSUP, + MSUPHIDE, + MTRANSP, + MTYPE, + MUSER, + MVAUTH, + MVDATE, + MVERTJC, + MVF, + MVFMF, + MVFML, + MVT, + MVTOF, + MVTOL, + MWRAPINDENT, + MWRAPRIGHT, + MZEROASC, + MZERODESC, + MZEROWID, + NESTCELL, + NESTROW, + NESTTABLEPROPS, + NEWTBLSTYRULS, + NEXTFILE, + NOAFCNSTTBL, + NOBRKWRPTBL, + NOCOLBAL, + NOCOMPATOPTIONS, + NOCWRAP, + NOCXSPTABLE, + NOEXTRASPRL, + NOFCHARS, + NOFCHARSWS, + NOFEATURETHROTTLE, + NOFPAGES, + NOFWORDS, + NOGROWAUTOFIT, + NOINDNMBRTS, + NOJKERNPUNCT, + NOLEAD, + NOLINE, + NOLNHTADJTBL, + NONESTTABLES, + NONSHPPICT, + NOOVERFLOW, + NOPROOF, + NOQFPROMOTE, + NOSECTEXPAND, + NOSNAPLINEGRID, + NOSPACEFORUL, + NOSUPERSUB, + NOTABIND, + NOTBRKCNSTFRCTBL, + NOTCVASP, + NOTVATXBX, + NOUICOMPAT, + NOULTRLSPC, + NOWIDCTLPAR, + NOWRAP, + NOWWRAP, + NOXLATTOYEN, + OBJALIAS, + OBJALIGN, + OBJATTPH, + OBJAUTLINK, + OBJCLASS, + OBJCROPB, + OBJCROPL, + OBJCROPR, + OBJCROPT, + OBJDATA, + OBJECT, + OBJEMB, + OBJH, + OBJHTML, + OBJICEMB, + OBJLINK, + OBJLOCK, + OBJNAME, + OBJOCX, + OBJPUB, + OBJSCALEX, + OBJSCALEY, + OBJSECT, + OBJSETSIZE, + OBJSUB, + OBJTIME, + OBJTRANSY, + OBJUPDATE, + OBJW, + OGUTTER, + OLDAS, + OLDCPROPS, + OLDLINEWRAP, + OLDPPROPS, + OLDSPROPS, + OLDTPROPS, + OLECLSID, + OPERATOR, + OTBLRUL, + OUTL, + OUTLINELEVEL, + OVERLAY, + PAGE, + PAGEBB, + PANOSE, + PAPERH, + PAPERW, + PAR, + PARARSID, + PARD, + PASSWORD, + PASSWORDHASH, + PC, + PCA, + PGBRDRB, + PGBRDRFOOT, + PGBRDRHEAD, + PGBRDRL, + PGBRDROPT, + PGBRDRR, + PGBRDRSNAP, + PGBRDRT, + PGHSXN, + PGNBIDIA, + PGNBIDIB, + PGNCHOSUNG, + PGNCNUM, + PGNCONT, + PGNDBNUM, + PGNDBNUMD, + PGNDBNUMK, + PGNDBNUMT, + PGNDEC, + PGNDECD, + PGNGANADA, + PGNGBNUM, + PGNGBNUMD, + PGNGBNUMK, + PGNGBNUML, + PGNHINDIA, + PGNHINDIB, + PGNHINDIC, + PGNHINDID, + PGNHN, + PGNHNSC, + PGNHNSH, + PGNHNSM, + PGNHNSN, + PGNHNSP, + PGNID, + PGNLCLTR, + PGNLCRM, + PGNRESTART, + PGNSTART, + PGNSTARTS, + PGNTHAIA, + PGNTHAIB, + PGNTHAIC, + PGNUCLTR, + PGNUCRM, + PGNVIETA, + PGNX, + PGNY, + PGNZODIAC, + PGNZODIACD, + PGNZODIACL, + PGP, + PGPTBL, + PGWSXN, + PHCOL, + PHMRG, + PHPG, + PICBMP, + PICBPP, + PICCROPB, + PICCROPL, + PICCROPR, + PICCROPT, + PICH, + PICHGOAL, + PICPROP, + PICSCALED, + PICSCALEX, + PICSCALEY, + PICT, + PICW, + PICWGOAL, + PINDTABQC, + PINDTABQL, + PINDTABQR, + PLAIN, + PMARTABQC, + PMARTABQL, + PMARTABQR, + PMMETAFILE, + PN, + PNACROSS, + PNAIU, + PNAIUD, + PNAIUEO, + PNAIUEOD, + PNB, + PNBIDIA, + PNBIDIB, + PNCAPS, + PNCARD, + PNCF, + PNCHOSUNG, + PNCNUM, + PNDBNUM, + PNDBNUMD, + PNDBNUMK, + PNDBNUML, + PNDBNUMT, + PNDEC, + PNDECD, + PNF, + PNFS, + PNGANADA, + PNGBLIP, + PNGBNUM, + PNGBNUMD, + PNGBNUMK, + PNGBNUML, + PNHANG, + PNI, + PNINDENT, + PNIROHA, + PNIROHAD, + PNLCLTR, + PNLCRM, + PNLVL, + PNLVLBLT, + PNLVLBODY, + PNLVLCONT, + PNNUMONCE, + PNORD, + PNORDT, + PNPREV, + PNQC, + PNQL, + PNQR, + PNRAUTH, + PNRDATE, + PNRESTART, + PNRNFC, + PNRNOT, + PNRPNBR, + PNRRGB, + PNRSTART, + PNRSTOP, + PNRXST, + PNSCAPS, + PNSECLVL, + PNSP, + PNSTART, + PNSTRIKE, + PNTEXT, + PNTXTA, + PNTXTB, + PNUCLTR, + PNUCRM, + PNUL, + PNULD, + PNULDASH, + PNULDASHD, + PNULDASHDD, + PNULDB, + PNULHAIR, + PNULNONE, + PNULTH, + PNULW, + PNULWAVE, + PNZODIAC, + PNZODIACD, + PNZODIACL, + POSNEGX, + POSNEGY, + POSX, + POSXC, + POSXI, + POSXL, + POSXO, + POSXR, + POSY, + POSYB, + POSYC, + POSYIL, + POSYIN, + POSYOUT, + POSYT, + PRAUTH, + PRCOLBL, + PRDATE, + PRINTDATA, + PRINTIM, + PRIVATE, + PROPNAME, + PROPTYPE, + PROTECT, + PROTEND, + PROTLEVEL, + PROTSTART, + PROTUSERTBL, + PSOVER, + PSZ, + PTABLDOT, + PTABLMDOT, + PTABLMINUS, + PTABLNONE, + PTABLUSCORE, + PUBAUTO, + PVMRG, + PVPARA, + PVPG, + PWD, + PXE, + QC, + QD, + QJ, + QK, + QL, + QMSPACE, + QR, + QT, + RAWCLBGDKBDIAG, + RAWCLBGBDIAG, + RAWCLBGCROSS, + RAWCLBGDCROSS, + RAWCLBGDKCROSS, + RAWCLBGDKDCROSS, + RAWCLBGDKFDIAG, + RAWCLBGDKHOR, + RAWCLBGDKVERT, + RAWCLBGFDIAG, + RAWCLBGHORIZ, + RAWCLBGVERT, + RDBLQUOTE, + READONLYRECOMMENDED, + READPROT, + RED, + RELYONVML, + REMDTTM, + REMPERSONALINFO, + RESULT, + REVAUTH, + REVAUTHDEL, + REVBAR, + REVDTTM, + REVDTTMDEL, + REVISED, + REVISIONS, + REVPROP, + REVPROT, + REVTBL, + REVTIM, + RI, + RIN, + ROW, + RQUOTE, + RSID, + RSIDROOT, + RSIDTBL, + RSLTBMP, + RSLTHTML, + RSLTMERGE, + RSLTPICT, + RSLTRTF, + RSLTTXT, + RTF, + RTLCH, + RTLDOC, + RTLGUTTER, + RTLMARK, + RTLPAR, + RTLROW, + RTLSECT, + RXE, + S, + SA, + SAAUTO, + SAFTNNALC, + SAFTNNAR, + SAFTNNAUC, + SAFTNNCHI, + SAFTNNCHOSUNG, + SAFTNNCNUM, + SAFTNNDBAR, + SAFTNNDBNUM, + SAFTNNDBNUMD, + SAFTNNDBNUMK, + SAFTNNDBNUMT, + SAFTNNGANADA, + SAFTNNGBNUM, + SAFTNNGBNUMD, + SAFTNNGBNUMK, + SAFTNNGBNUML, + SAFTNNRLC, + SAFTNNRUC, + SAFTNNZODIAC, + SAFTNNZODIACD, + SAFTNNZODIACL, + SAFTNRESTART, + SAFTNRSTCONT, + SAFTNSTART, + SAUTOUPD, + SAVEINVALIDXML, + SAVEPREVPICT, + SB, + SBASEDON, + SBAUTO, + SBKCOL, + SBKEVEN, + SBKNONE, + SBKODD, + SBKPAGE, + SBYS, + SCAPS, + SCOMPOSE, + SEC, + SECT, + SECTD, + SECTDEFAULTCL, + SECTEXPAND, + SECTLINEGRID, + SECTNUM, + SECTRSID, + SECTSPECIFYCL, + SECTSPECIFYGENN, + SECTSPECIFYL, + SECTUNLOCKED, + SFTNBJ, + SFTNNALC, + SFTNNAR, + SFTNNAUC, + SFTNNCHI, + SFTNNCHOSUNG, + SFTNNCNUM, + SFTNNDBAR, + SFTNNDBNUM, + SFTNNDBNUMD, + SFTNNDBNUMK, + SFTNNDBNUMT, + SFTNNGANADA, + SFTNNGBNUM, + SFTNNGBNUMD, + SFTNNGBNUMK, + SFTNNGBNUML, + SFTNNRLC, + SFTNNRUC, + SFTNNZODIAC, + SFTNNZODIACD, + SFTNNZODIACL, + SFTNRESTART, + SFTNRSTCONT, + SFTNRSTPG, + SFTNSTART, + SFTNTJ, + SHAD, + SHADING, + SHIDDEN, + SHIFT, + SHOWPLACEHOLDTEXT, + SHOWXMLERRORS, + SHP, + SHPBOTTOM, + SHPBXCOLUMN, + SHPBXIGNORE, + SHPBXMARGIN, + SHPBXPAGE, + SHPBYIGNORE, + SHPBYMARGIN, + SHPBYPAGE, + SHPBYPARA, + SHPFBLWTXT, + SHPFHDR, + SHPGRP, + SHPINST, + SHPLEFT, + SHPLID, + SHPLOCKANCHOR, + SHPPICT, + SHPRIGHT, + SHPRSLT, + SHPTOP, + SHPTXT, + SHPWRK, + SHPWR, + SHPZ, + SL, + SLINK, + SLMULT, + SLOCKED, + SN, + SNAPTOGRIDINCELL, + SNEXT, + SOFTCOL, + SOFTLHEIGHT, + SOFTLINE, + SOFTPAGE, + SP, + SPERSONAL, + SPLTPGPAR, + SPLYTWNINE, + SPRIORITY, + SPRSBSP, + SPRSLNSP, + SPRSSPBF, + SPRSTSM, + SPRSTSP, + SPV, + SQFORMAT, + SRAUTH, + SRDATE, + SREPLY, + SSEMIHIDDEN, + STATICVAL, + STEXTFLOW, + STRIKE, + STRIKED, + STSHFBI, + STSHFDBCH, + STSHFHICH, + STSHFLOCH, + STYLELOCK, + STYLELOCKBACKCOMP, + STYLELOCKENFORCED, + STYLELOCKQFSET, + STYLELOCKTHEME, + STYLESHEET, + STYLESORTMETHOD, + STYRSID, + SUB, + SUBDOCUMENT, + SUBFONTBYSIZE, + SUBJECT, + SUNHIDEUSED, + SUPER, + SV, + SVB, + SWPBDR, + TAB, + TABSNOOVRLP, + TAPRTL, + TB, + TBLIND, + TBLINDTYPE, + TBLLKBESTFIT, + TBLLKBORDER, + TBLLKCOLOR, + TBLLKFONT, + TBLLKHDRCOLS, + TBLLKHDRROWS, + TBLLKLASTCOL, + TBLLKLASTROW, + TBLLKNOCOLBAND, + TBLLKNOROWBAND, + TBLLKSHADING, + TBLRSID, + TC, + TCELLD, + TCF, + TCL, + TCN, + TDFRMTXTBOTTOM, + TDFRMTXTLEFT, + TDFRMTXTRIGHT, + TDFRMTXTTOP, + TEMPLATE, + THEMEDATA, + THEMELANG, + THEMELANGCS, + THEMELANGFE, + TIME, + TITLE, + TITLEPG, + TLDOT, + TLEQ, + TLHYPH, + TLMDOT, + TLTH, + TLUL, + TOPLINEPUNCT, + TPHCOL, + TPHMRG, + TPHPG, + TPOSNEGX, + TPOSNEGY, + TPOSXC, + TPOSXI, + TPOSXL, + TPOSX, + TPOSXO, + TPOSXR, + TPOSY, + TPOSYB, + TPOSYC, + TPOSYIL, + TPOSYIN, + TPOSYOUT, + TPOSYT, + TPVMRG, + TPVPARA, + TPVPG, + TQC, + TQDEC, + TQR, + TRACKFORMATTING, + TRACKMOVES, + TRANSMF, + TRAUTH, + TRAUTOFIT, + TRBGBDIAG, + TRBGCROSS, + TRBGDCROSS, + TRBGDKBDIAG, + TRBGDKCROSS, + TRBGDKDCROSS, + TRBGDKFDIAG, + TRBGDKHOR, + TRBGDKVERT, + TRBGFDIAG, + TRBGHORIZ, + TRBGVERT, + TRBRDRB, + TRBRDRH, + TRBRDRL, + TRBRDRR, + TRBRDRT, + TRBRDRV, + TRCBPAT, + TRCFPAT, + TRDATE, + TRFTSWIDTHA, + TRFTSWIDTHB, + TRFTSWIDTH, + TRGAPH, + TRHDR, + TRKEEP, + TRKEEPFOLLOW, + TRLEFT, + TROWD, + TRPADDB, + TRPADDFB, + TRPADDFL, + TRPADDFR, + TRPADDFT, + TRPADDL, + TRPADDR, + TRPADDT, + TRPADOB, + TRPADOFB, + TRPADOFL, + TRPADOFR, + TRPADOFT, + TRPADOL, + TRPADOR, + TRPADOT, + TRPAT, + TRQC, + TRQL, + TRQR, + TRRH, + TRSHDNG, + TRSPDB, + TRSPDFB, + TRSPDFL, + TRSPDFR, + TRSPDFT, + TRSPDL, + TRSPDR, + TRSPDT, + TRSPOB, + TRSPOFB, + TRSPOFL, + TRSPOFR, + TRSPOFT, + TRSPOL, + TRSPOR, + TRSPOT, + TRUNCATEFONTHEIGHT, + TRUNCEX, + TRWWIDTHA, + TRWWIDTHB, + TRWWIDTH, + TS, + TSBGBDIAG, + TSBGCROSS, + TSBGDCROSS, + TSBGDKBDIAG, + TSBGDKCROSS, + TSBGDKDCROSS, + TSBGDKFDIAG, + TSBGDKHOR, + TSBGDKVERT, + TSBGFDIAG, + TSBGHORIZ, + TSBGVERT, + TSBRDRB, + TSBRDRDGL, + TSBRDRDGR, + TSBRDRH, + TSBRDRL, + TSBRDRR, + TSBRDRT, + TSBRDRV, + TSCBANDHORZEVEN, + TSCBANDHORZODD, + TSCBANDSH, + TSCBANDSV, + TSCBANDVERTEVEN, + TSCBANDVERTODD, + TSCELLCBPAT, + TSCELLCFPAT, + TSCELLPADDB, + TSCELLPADDFB, + TSCELLPADDFL, + TSCELLPADDFR, + TSCELLPADDFT, + TSCELLPADDL, + TSCELLPADDR, + TSCELLPADDT, + TSCELLPCT, + TSCELLWIDTH, + TSCELLWIDTHFTS, + TSCFIRSTCOL, + TSCFIRSTROW, + TSCLASTCOL, + TSCLASTROW, + TSCNECELL, + TSCNWCELL, + TSCSECELL, + TSCSWCELL, + TSD, + TSNOWRAP, + TSROWD, + TSVERTALB, + TSVERTALC, + TSVERTALT, + TWOINONE, + TWOONONE, + TX, + TXBXTWALWAYS, + TXBXTWFIRST, + TXBXTWFIRSTLAST, + TXBXTWLAST, + TXBXTWNO, + TXE, + U, + UC, + UD, + UL, + ULC, + ULD, + ULDASH, + ULDASHD, + ULDASHDD, + ULDB, + ULHAIR, + ULHWAVE, + ULLDASH, + ULNONE, + ULTH, + ULTHD, + ULTHDASH, + ULTHDASHD, + ULTHDASHDD, + ULTHLDASH, + ULULDBWAVE, + ULW, + ULWAVE, + UP, + UPR, + URTF, + USELTBALN, + USENORMSTYFORLIST, + USERPROPS, + USEXFORM, + UTINL, + V, + VALIDATEXML, + VERN, + VERSION, + VERTAL, + VERTALB, + VERTALC, + VERTALJ, + VERTALT, + VERTDOC, + VERTSECT, + VIEWBKSP, + VIEWKIND, + VIEWNOBOUND, + VIEWSCALE, + VIEWZK, + WBITMAP, + WBMBITSPIXEL, + WBMPLANES, + WBMWIDTHBYTE, + WEBHIDDEN, + WGRFFMTFILTER, + WIDCTLPAR, + WIDOWCTRL, + WINDOWCAPTION, + WMETAFILE, + WPEQN, + WPJST, + WPSP, + WRAPAROUND, + WRAPDEFAULT, + WRAPTHROUGH, + WRAPTIGHT, + WRAPTRSP, + WRITERESERVATION, + WRITERESERVHASH, + WRPPUNCT, + XE, + XEF, + XFORM, + XMLATTR, + XMLATTRNAME, + XMLATTRNS, + XMLATTRVALUE, + XMLCLOSE, + XMLNAME, + XMLNS, + XMLNSTBL, + XMLOPEN, + XMLSDTTCELL, + XMLSDTTPARA, + XMLSDTTREGULAR, + XMLSDTTROW, + XMLSDTTUNKNOWN, + YR, + YTS, + YXE, + ZWBO, + ZWJ, + ZWNBO, + ZWNJ, + FLYMAINCNT, + FLYVERT, + FLYHORZ, + FLYANCHOR +}; +const char* keywordToString(RTFKeyword nKeyword); + +/// Types of an RTF Control Word +enum class RTFControlType +{ + FLAG, // eg \sbknone takes no parameter + DESTINATION, // eg \fonttbl, if ignored, the whole group should be skipped + SYMBOL, // eg \tab + TOGGLE, // eg \b (between on and off) + VALUE // eg \fs (requires parameter) +}; + +/// Represents an RTF Control Word +class RTFSymbol +{ + const char* m_sKeyword; + RTFControlType m_eControlType; + RTFKeyword m_nIndex; + + int m_nDefValue; ///< Most of the control words default to 0. + +public: + RTFSymbol(const char* sKeyword, RTFControlType nControlType, RTFKeyword nIndex, int nDefValue) + : m_sKeyword(sKeyword) + , m_eControlType(nControlType) + , m_nIndex(nIndex) + , m_nDefValue(nDefValue) + { + } + + const char* GetKeyword() const { return m_sKeyword; } + + RTFControlType GetControlType() const { return m_eControlType; } + + RTFKeyword GetIndex() const { return m_nIndex; } + + int GetDefValue() const { return m_nDefValue; } +}; + +extern RTFSymbol const aRTFControlWords[]; +extern const int nRTFControlWords; + +/// Represents an RTF Math Control Word +class RTFMathSymbol +{ + RTFKeyword m_eKeyword; + int m_nToken; ///< This is the OOXML token equivalent. + Destination m_eDestination; + +public: + RTFMathSymbol(RTFKeyword eKeyword, int nToken = 0, + Destination eDestination = Destination::NORMAL) + : m_eKeyword(eKeyword) + , m_nToken(nToken) + , m_eDestination(eDestination) + { + } + + int GetToken() const { return m_nToken; } + + Destination GetDestination() const { return m_eDestination; } + + bool operator<(const RTFMathSymbol& rOther) const; +}; + +extern RTFMathSymbol const aRTFMathControlWords[]; +extern const int nRTFMathControlWords; + +} // namespace writerfilter::rtftok + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |