34#define PORTIONKIND_TEXT 0
35#define PORTIONKIND_TAB 1
37#define DELMODE_SIMPLE 0
38#define DELMODE_RESTOFWORD 1
39#define DELMODE_RESTOFCONTENT 2
43#define TRAVEL_X_DONTKNOW 0xFFFF
44#define MAXCHARSINPARA 0x3FFF-CHARPOSGROW
78 static constexpr auto npos = std::numeric_limits<std::size_t>::max();
84 std::vector<TETextPortion>::iterator
begin();
85 std::vector<TETextPortion>::const_iterator
begin()
const;
86 std::vector<TETextPortion>::iterator
end();
87 std::vector<TETextPortion>::const_iterator
end()
const;
89 std::size_t
size()
const;
90 std::vector<TETextPortion>::iterator
erase(
const std::vector<TETextPortion>::iterator& aIter );
91 std::vector<TETextPortion>::iterator
insert(
const std::vector<TETextPortion>::iterator& aIter,
96 std::size_t
FindPortion( sal_Int32 nCharPos, sal_Int32& rPortionStart,
bool bPreferStartingPortion =
false );
134 bool IsIn( sal_Int32 nIndex,
bool bInclEnd )
const
197 void MarkInvalid( sal_Int32 nStart, sal_Int32 nDiff );
208 std::vector<TextLine>::size_type
GetLineNumber( sal_Int32 nIndex,
bool bInclEnd );
215 std::vector<std::unique_ptr<TEParaPortion>>
mvData;
221 sal_uInt32
Count()
const {
return static_cast<sal_uInt32
>(
mvData.size()); }
239 virtual void SetCursorAtPoint(
const Point& rPointPixel,
bool bDontSelectAtCursor =
false )
override;
An idle is a timer to be scheduled immediately.
TEParaPortion(const TEParaPortion &)=delete
void SetNotSimpleInvalid()
std::vector< TEWritingDirectionInfo > maWritingDirectionInfos
void MarkInvalid(sal_Int32 nStart, sal_Int32 nDiff)
sal_Int32 mnInvalidPosStart
sal_Int32 GetInvalidDiff() const
void CorrectValuesBehindLastFormattedLine(sal_uInt16 nLastFormattedLine)
std::vector< TEWritingDirectionInfo > & GetWritingDirectionInfos()
TETextPortionList & GetTextPortions()
void operator=(const TEParaPortion &)=delete
bool IsSimpleInvalid() const
TETextPortionList maTextPortions
void MarkSelectionInvalid(sal_Int32 nStart)
std::vector< TextLine > & GetLines()
std::vector< TextLine > maLines
sal_Int32 GetInvalidPosStart() const
std::vector< TextLine >::size_type GetLineNumber(sal_Int32 nIndex, bool bInclEnd)
TEParaPortion(TextNode *pNode)
TextNode * GetNode() const
void Insert(TEParaPortion *pObject, sal_uInt32 nPos)
TEParaPortion * GetObject(sal_uInt32 nIndex)
void Remove(sal_uInt32 nPos)
std::vector< std::unique_ptr< TEParaPortion > > mvData
TETextPortion & operator[](std::size_t nPos)
std::vector< TETextPortion >::iterator end()
std::size_t FindPortion(sal_Int32 nCharPos, sal_Int32 &rPortionStart, bool bPreferStartingPortion=false)
std::vector< TETextPortion >::iterator insert(const std::vector< TETextPortion >::iterator &aIter, const TETextPortion &rTP)
std::vector< TETextPortion >::iterator begin()
std::vector< TETextPortion >::iterator erase(const std::vector< TETextPortion >::iterator &aIter)
static constexpr auto npos
void DeleteFromPortion(std::size_t nDelFrom)
std::vector< TETextPortion > maPortions
void push_back(const TETextPortion &aTP)
bool IsRightToLeft() const
void SetRightToLeft(bool b)
TETextPortion(sal_Int32 nL)
std::size_t mnStartPortion
void SetEndPortion(std::size_t n)
void SetStartPortion(std::size_t n)
bool IsIn(sal_Int32 nIndex, bool bInclEnd) const
std::size_t GetEndPortion() const
bool operator==(const TextLine &rLine) const
sal_Int32 GetStart() const
void SetStart(sal_Int32 n)
std::size_t GetStartPortion() const
virtual bool IsSelectionAtPoint(const Point &rPointPixel) override
virtual void DestroyAnchor() override
virtual void BeginDrag() override
virtual void SetCursorAtPoint(const Point &rPointPixel, bool bDontSelectAtCursor=false) override
virtual void CreateAnchor() override
TextSelFunctionSet(TextView *pView)
virtual void DeselectAll() override
virtual void DeselectAtPoint(const Point &) override
void SetStyle(sal_uInt16 nStyle)
EmbeddedObjectRef * pObject
TEWritingDirectionInfo(bool LeftToRight, sal_Int32 Start, sal_Int32 End)