Copying text to clipboard

This commit is contained in:
Jakub Melka
2020-01-26 17:48:38 +01:00
parent 12b2f44619
commit 0bc64494fd
4 changed files with 103 additions and 0 deletions

View File

@ -238,9 +238,15 @@ public:
/// Returns iterator to end of page range
iterator end(PDFInteger pageIndex) const;
/// Returns iterator to next page range
iterator nextPageRange(iterator currentPageRange) const;
/// Returns true, if text selection is empty
bool isEmpty() const { return m_items.empty(); }
iterator begin() const { return m_items.cbegin(); }
iterator end() const { return m_items.cend(); }
private:
PDFTextSelectionColoredItems m_items;
};
@ -288,6 +294,11 @@ public:
/// \param expression Regular expression to be matched
PDFFindResults find(const QRegularExpression& expression) const;
/// Returns text form character pointers
/// \param begin Begin character
/// \param end End character
QString getText(const PDFCharacterPointer& begin, const PDFCharacterPointer& end) const;
/// Merge data from \p next flow (i.e. connect two consecutive flows)
void merge(const PDFTextFlow& next);
@ -347,6 +358,17 @@ public:
/// \param point2 Second point
PDFTextSelection createTextSelection(PDFInteger pageIndex, const QPointF& point1, const QPointF& point2);
/// Returns string from text selection
/// \param itBegin Iterator (begin range)
/// \param itEnd Iterator (end range)
/// \param pageIndex Index of the page
QString getTextFromSelection(PDFTextSelection::iterator itBegin, PDFTextSelection::iterator itEnd, PDFInteger pageIndex) const;
/// Returns string from text selection
/// \param selection Text selection
/// \param pageIndex Index of the page
QString getTextFromSelection(const PDFTextSelection& selection, PDFInteger pageIndex) const;
friend QDataStream& operator<<(QDataStream& stream, const PDFTextLayout& layout);
friend QDataStream& operator>>(QDataStream& stream, PDFTextLayout& layout);