20 #ifndef INCLUDED_SW_INC_IDOCUMENTMARKACCESS_HXX
21 #define INCLUDED_SW_INC_IDOCUMENTMARKACCESS_HXX
63 std::unique_ptr<std::vector<::sw::mark::MarkBase*>::const_iterator>
m_pIter;
67 std::vector<::sw::mark::MarkBase*>::const_iterator
const&
get()
const;
71 typedef ::sw::mark::IMark*
const*
pointer;
76 iterator(std::vector<::sw::mark::MarkBase*>::const_iterator
const& rIter);
88 ::
sw::mark::IMark* operator*() const;
93 bool operator==(
iterator const& rOther) const;
94 bool operator!=(
iterator const& rOther) const;
97 iterator& operator+=(difference_type);
98 iterator operator+(difference_type) const;
99 iterator& operator-=(difference_type);
100 iterator operator-(difference_type) const;
101 difference_type operator-(
iterator const&) const;
102 value_type operator[](difference_type) const;
103 bool operator<(
iterator const& rOther) const;
104 bool operator>(
iterator const& rOther) const;
105 bool operator<=(
iterator const& rOther) const;
106 bool operator>=(
iterator const& rOther) const;
134 const OUString& rProposedName,
139 const OUString& rName,
140 const OUString& rType,
143 const OUString& rName,
144 const OUString& rType) = 0;
148 const OUString& rName ) = 0;
174 const SwPaM& rPaM) =0;
186 const OUString& rNewName) =0;
202 const sal_Int32 nOffset) =0;
220 const sal_Int32 nOffset) =0;
230 std::vector< ::sw::mark::SaveBookmark>* pSaveBkmk,
239 virtual std::unique_ptr<ILazyDeleter>
247 virtual void deleteMark(const ::sw::mark::IMark*
const pMark) =0;
366 #endif // IDOCUMENTBOOKMARKACCESS_HXX_INCLUDED
::sw::mark::IMark * value_type
virtual ::sw::mark::IFieldmark * getFieldmarkAfter(const SwPosition &pos) const =0
virtual ::sw::mark::IFieldmark * getFieldmarkAt(const SwPosition &rPos) const =0
get Fieldmark for CH_TXT_ATR_FIELDSTART/CH_TXT_ATR_FIELDEND at rPos
virtual void clearAllMarks()=0
Clear (deletes) all marks.
Marks a position in the document model.
virtual const_iterator_t getAnnotationMarksEnd() const =0
virtual ~IDocumentMarkAccess()
To avoid recursive calls of deleteMark, the removal of dummy characters of fieldmarks has to be delay...
virtual sal_Int32 getBookmarksCount() const =0
returns the number of IBookmarks.
wrapper iterator: wraps iterator of implementation while hiding MarkBase class; only IMark instances ...
std::ptrdiff_t difference_type
std::unique_ptr< std::vector<::sw::mark::MarkBase * >::const_iterator > m_pIter
static SW_DLLPUBLIC MarkType GetType(const ::sw::mark::IMark &rMark)
Returns the MarkType used to create the mark.
virtual void correctMarksRelative(const SwNodeIndex &rOldNode, const SwPosition &rNewPos, const sal_Int32 nOffset)=0
Corrects marks (relative) This method uses the previous position of the mark in the paragraph as offs...
Provides access to the marks of a document.
virtual const_iterator_t findFirstBookmarkStartsAfter(const SwPosition &rPos) const =0
Finds the first mark that is starting after.
virtual void restoreAnnotationMarks()=0
virtual void assureSortedMarkContainers() const =0
Dialog to specify the properties of date form field.
virtual sal_Int32 getAnnotationMarksCount() const =0
virtual ::sw::mark::IFieldmark * getDropDownFor(const SwPosition &pos) const =0
static SW_DLLPUBLIC OUString GetCrossRefHeadingBookmarkNamePrefix()
static SW_DLLPUBLIC bool IsLegalPaMForCrossRefHeadingBookmark(const SwPaM &rPaM)
virtual const_iterator_t findMark(const OUString &rMark) const =0
Finds a mark by name.
virtual ::sw::mark::IFieldmark * getFieldmarkFor(const SwPosition &pos) const =0
virtual sw::mark::IMark * makeAnnotationMark(const SwPaM &rPaM, const OUString &rName)=0
virtual std::vector< ::sw::mark::IFieldmark * > getDropDownsFor(const SwPaM &rPaM) const =0
virtual ::sw::mark::IMark * makeMark(const SwPaM &rPaM, const OUString &rProposedName, MarkType eMark,::sw::mark::InsertMode eMode, SwPosition const *pSepPos=nullptr)=0
Generates a new mark in the document for a certain selection.
virtual const_iterator_t getFieldmarksEnd() const =0
returns a STL-like random access iterator to the end of the sequence of fieldmarks.
virtual const_iterator_t findFirstAnnotationStartsAfter(const SwPosition &rPos) const =0
Finds the first mark that is starting after.
virtual void NotifyCursorUpdate(const SwCursorShell &rCursorShell)=0
virtual const_iterator_t findAnnotationMark(const OUString &rName) const =0
virtual void repositionMark(::sw::mark::IMark *io_pMark, const SwPaM &rPaM)=0
Moves an existing mark to a new selection and performs needed updates.
std::random_access_iterator_tag iterator_category
virtual std::unique_ptr< ILazyDeleter > deleteMark(const IDocumentMarkAccess::const_iterator_t &ppMark)=0
Deletes a mark.
virtual const_iterator_t getAllMarksBegin() const =0
returns a STL-like random access iterator to the begin of the sequence of marks.
PaM is Point and Mark: a selection of the document model.
virtual const_iterator_t getBookmarksEnd() const =0
returns a STL-like random access iterator to the end of the sequence of IBookmarks.
virtual void ClearFieldActivation()=0
virtual const_iterator_t getAllMarksEnd() const =0
returns a STL-like random access iterator to the end of the sequence of marks.
virtual void deleteMarks(const SwNodeIndex &rStt, const SwNodeIndex &rEnd, std::vector< ::sw::mark::SaveBookmark > *pSaveBkmk, const SwIndex *pSttIdx, const SwIndex *pEndIdx)=0
Deletes marks in a range.
virtual ::sw::mark::IFieldmark * changeFormFieldmarkType(::sw::mark::IFieldmark *pFieldmark, const OUString &rNewType)=0
Marks a character position inside a document model node.
virtual const_iterator_t getAnnotationMarksBegin() const =0
virtual const_iterator_t findBookmark(const OUString &rMark) const =0
Finds a bookmark by name.
Marks a node in the document model.
virtual sw::mark::IFieldmark * makeFieldBookmark(const SwPaM &rPaM, const OUString &rName, const OUString &rType, SwPosition const *pSepPos=nullptr)=0
virtual void deleteFieldmarkAt(const SwPosition &rPos)=0
virtual sw::mark::IFieldmark * makeNoTextFieldBookmark(const SwPaM &rPaM, const OUString &rName, const OUString &rType)=0
virtual bool isBookmarkDeleted(SwPaM const &rPaM) const =0
check if the selection would delete a BOOKMARK
virtual const_iterator_t getFieldmarksBegin() const =0
returns a STL-like random access iterator to the begin of the sequence of fieldmarks.
SwTextNode is a paragraph in the document model.
virtual sw::mark::IMark * getAnnotationMarkFor(const SwPosition &rPosition) const =0
virtual sal_Int32 getAllMarksCount() const =0
returns the number of marks.
virtual ::sw::mark::IMark * getMarkForTextNode(const SwTextNode &rTextNode, MarkType eMark)=0
Returns a mark in the document for a paragraph.
virtual const_iterator_t getBookmarksBegin() const =0
returns a STL-like random access iterator to the begin of the sequence the IBookmarks.
virtual void correctMarksAbsolute(const SwNodeIndex &rOldNode, const SwPosition &rNewPos, const sal_Int32 nOffset)=0
Corrects marks (absolute) This method ignores the previous position of the mark in the paragraph...
static void DeleteFieldmarkCommand(::sw::mark::IFieldmark const &rMark)
virtual bool renameMark(::sw::mark::IMark *io_pMark, const OUString &rNewName)=0
Renames an existing Mark, if possible.
virtual ::sw::mark::IFieldmark * getFieldmarkBefore(const SwPosition &pos) const =0
::sw::mark::IMark *const & reference
::sw::mark::IMark *const * pointer