git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35978
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
int maxWidth = 0;
wxRichTextObjectList::compatibility_iterator node = m_children.GetFirst();
int maxWidth = 0;
wxRichTextObjectList::compatibility_iterator node = m_children.GetFirst();
bool layoutAll = true;
// Get invalid range, rounding to paragraph start/end.
bool layoutAll = true;
// Get invalid range, rounding to paragraph start/end.
// A way to force speedy rest-of-buffer layout (the 'else' below)
bool forceQuickLayout = false;
// A way to force speedy rest-of-buffer layout (the 'else' below)
bool forceQuickLayout = false;
while (node)
{
// Assume this box only contains paragraphs
while (node)
{
// Assume this box only contains paragraphs
void wxRichTextParagraphLayoutBox::Invalidate(const wxRichTextRange& invalidRange)
{
SetDirty(true);
void wxRichTextParagraphLayoutBox::Invalidate(const wxRichTextRange& invalidRange)
{
SetDirty(true);
if (invalidRange == wxRICHTEXT_ALL)
{
m_invalidRange = wxRICHTEXT_ALL;
if (invalidRange == wxRICHTEXT_ALL)
{
m_invalidRange = wxRICHTEXT_ALL;
// Already invalidating everything
if (m_invalidRange == wxRICHTEXT_ALL)
return;
// Already invalidating everything
if (m_invalidRange == wxRICHTEXT_ALL)
return;
if ((invalidRange.GetStart() < m_invalidRange.GetStart()) || m_invalidRange.GetStart() == -1)
m_invalidRange.SetStart(invalidRange.GetStart());
if (invalidRange.GetEnd() > m_invalidRange.GetEnd())
if ((invalidRange.GetStart() < m_invalidRange.GetStart()) || m_invalidRange.GetStart() == -1)
m_invalidRange.SetStart(invalidRange.GetStart());
if (invalidRange.GetEnd() > m_invalidRange.GetEnd())
{
if (m_invalidRange == wxRICHTEXT_ALL || m_invalidRange == wxRICHTEXT_NONE)
return m_invalidRange;
{
if (m_invalidRange == wxRICHTEXT_ALL || m_invalidRange == wxRICHTEXT_NONE)
return m_invalidRange;
wxRichTextRange range = m_invalidRange;
wxRichTextRange range = m_invalidRange;
if (wholeParagraphs)
{
wxRichTextParagraph* para1 = GetParagraphAtPosition(range.GetStart());
if (wholeParagraphs)
{
wxRichTextParagraph* para1 = GetParagraphAtPosition(range.GetStart());
// Add a new line
wxRichTextLine* line = AllocateLine(lineCount);
// Add a new line
wxRichTextLine* line = AllocateLine(lineCount);
// Set relative range so we won't have to change line ranges when paragraphs are moved
line->SetRange(wxRichTextRange(actualRange.GetStart() - GetRange().GetStart(), actualRange.GetEnd() - GetRange().GetStart()));
line->SetPosition(currentPosition);
// Set relative range so we won't have to change line ranges when paragraphs are moved
line->SetRange(wxRichTextRange(actualRange.GetStart() - GetRange().GetStart(), actualRange.GetEnd() - GetRange().GetStart()));
line->SetPosition(currentPosition);
bool wxRichTextBuffer::CopyToClipboard(const wxRichTextRange& range)
{
bool success = false;
bool wxRichTextBuffer::CopyToClipboard(const wxRichTextRange& range)
{
bool success = false;
wxString text = GetTextForRange(range);
if (!wxTheClipboard->IsOpened() && wxTheClipboard->Open())
{
success = wxTheClipboard->SetData(new wxTextDataObject(text));
wxTheClipboard->Close();
}
wxString text = GetTextForRange(range);
if (!wxTheClipboard->IsOpened() && wxTheClipboard->Open())
{
success = wxTheClipboard->SetData(new wxTextDataObject(text));
wxTheClipboard->Close();
}
+#else
+ wxUnusedVar(range);
+#endif
bool wxRichTextBuffer::PasteFromClipboard(long position)
{
bool success = false;
bool wxRichTextBuffer::PasteFromClipboard(long position)
{
bool success = false;
if (CanPasteFromClipboard())
{
if (wxTheClipboard->Open())
if (CanPasteFromClipboard())
{
if (wxTheClipboard->Open())
wxTheClipboard->Close();
}
}
wxTheClipboard->Close();
}
}
+#else
+ wxUnusedVar(position);
+#endif
bool wxRichTextBuffer::CanPasteFromClipboard() const
{
bool canPaste = false;
bool wxRichTextBuffer::CanPasteFromClipboard() const
{
bool canPaste = false;
if (!wxTheClipboard->IsOpened() && wxTheClipboard->Open())
{
if (wxTheClipboard->IsSupported(wxDF_TEXT) || wxTheClipboard->IsSupported(wxDF_BITMAP))
if (!wxTheClipboard->IsOpened() && wxTheClipboard->Open())
{
if (wxTheClipboard->IsSupported(wxDF_TEXT) || wxTheClipboard->IsSupported(wxDF_BITMAP))
}
wxTheClipboard->Close();
}
}
wxTheClipboard->Close();
}
{
if (ch == 10 && lastCh != 13)
str += wxT('\n');
{
if (ch == 10 && lastCh != 13)
str += wxT('\n');
if (ch > 0 && ch != 10)
str += wxChar(ch);
if (ch > 0 && ch != 10)
str += wxChar(ch);