20#ifndef INCLUDED_EDITENG_SVXRTF_HXX
21#define INCLUDED_EDITENG_SVXRTF_HXX
25#include <rtl/ustring.hxx>
27#include <vcl/font.hxx>
94 std::deque< std::unique_ptr<SvxRTFItemStackType> >
aAttrStack;
99 std::map<sal_uInt16, sal_uInt16>
data;
129 void ClearColorTbl();
130 void ClearAttrStack();
137 void SetDefault(
int nToken,
int nValue );
140 void RTFPardPlain(
bool bPard,
SfxItemSet** ppSet );
142 void BuildWhichTable();
159 static void DelCharAtEnd( OUStringBuffer& rStr,
const sal_Unicode cDel );
162 virtual void NextToken(
int nToken )
override;
164 void ReadStyleTable();
165 void ReadColorTable();
166 void ReadFontTable();
167 void ReadAttr(
int nToken,
SfxItemSet* pSet );
168 void ReadTabAttr(
int nToken,
SfxItemSet& rSet );
174 void SetAllAttrOfStk();
178 virtual void MovePos(
bool bForward =
true ) = 0;
180 sal_Int32& rCntPos )=0;
183 virtual void UnknownAttrToken(
int nToken );
186 virtual void CalcValue();
205 inline const Color& GetColor(
size_t nId )
const;
217 void ReadBorderAttr(
int nToken,
SfxItemSet& rSet,
bool bTableDef=
false );
218 void ReadBackgroundAttr(
int nToken,
SfxItemSet& rSet,
bool bTableDef=
false );
221 virtual void Continue(
int nToken )
override;
250 void Add(std::unique_ptr<SvxRTFItemStackType>);
295 if ( pTmp ==
nullptr )
EditNodeIdx(EditEngine *pEE, ContentNode *pNd)
EditEngine * mpEditEngine
EditPosition(EditEngine *pIEE, EditSelection *pSel)
sal_Int32 GetCntIdx() const
EditNodeIdx MakeNodeIdx() const
EditEngine * mpEditEngine
sal_Int32 GetNodeIdx() const
virtual void NextToken(T nToken)=0
virtual void Continue(int nToken) override
virtual SvParserState CallParser() override
SvxRTFItemStackList maChildList
const SfxItemSet & GetAttrSet() const
sal_Int32 GetEndCnt() const
SvxRTFItemStackType(SvxRTFItemStackType const &)=delete
void SetRTFDefaults(const SfxItemSet &rDefaults)
const EditNodeIdx & GetSttNode() const
std::optional< EditNodeIdx > mxStartNodeIdx
std::optional< EditNodeIdx > mxEndNodeIdx
const EditNodeIdx & GetEndNode() const
void SetStartPos(const EditPosition &rPos)
void operator=(SvxRTFItemStackType const &)=delete
static std::unique_ptr< SvxRTFItemStackType > createSvxRTFItemStackType(SfxItemPool &, const WhichRangesContainer &pWhichRange, const EditPosition &)
void Compress(const SvxRTFParser &)
SfxItemSet & GetAttrSet()
sal_Int32 GetSttCnt() const
void Add(std::unique_ptr< SvxRTFItemStackType >)
sal_uInt16 StyleNo() const
SvxRTFParser(SvxRTFParser const &)=delete
void operator=(SvxRTFParser const &)=delete
void SetChkStyleAttr(bool bFlag)
WhichRangesContainer aWhichMap
virtual void InsertText()=0
bool IsChkStyleAttr() const
virtual void InsertPara()=0
std::optional< Color > mxDefaultColor
virtual void SetEndPrevPara(std::optional< EditNodeIdx > &rpNodePos, sal_Int32 &rCntPos)=0
SvxRTFStyleTbl m_StyleTable
virtual bool IsEndPara(EditNodeIdx *pNd, sal_Int32 nCnt) const =0
std::vector< Color > maColorTable
std::optional< vcl::Font > pDfltFont
std::optional< EditPosition > mxInsertPosition
SvxRTFStyleTbl & GetStyleTbl()
SvxRTFFontTbl m_FontTable
std::unique_ptr< SfxItemSet > pRTFDefaults
void SetPardMap(TypedWhichId< T > wid, TypedWhichId< T > widTrue)
void SetCalcValue(bool bFlag)
void SetNewDoc(bool bFlag)
SvxRTFItemStackList m_AttrSetList
SfxItemSet & GetAttrSet()
void SetAttrPool(SfxItemPool *pNewPool)
const Color & GetColor(size_t nId) const
SvxRTFItemStackType * GetAttrSet_()
std::deque< std::unique_ptr< SvxRTFItemStackType > > aAttrStack
virtual void MovePos(bool bForward=true)=0
#define EDITENG_DLLPUBLIC
vcl::Font GetFont(vcl::Font const &rFont, DrawModeFlags nDrawMode, StyleSettings const &rStyleSettings)
TypedWhichId< T > operator[](TypedWhichId< T > in) const
void set(TypedWhichId< T > in, TypedWhichId< T > out)
std::map< sal_uInt16, sal_uInt16 > data
SvxRTFStyleType(SfxItemPool &rPool, const WhichRangesContainer &pWhichRange)
std::map< short, vcl::Font > SvxRTFFontTbl
std::map< sal_uInt16, SvxRTFStyleType > SvxRTFStyleTbl