// Purpose: Rich text printing classes
// Author: Julian Smart
// Created: 2006-10-24
-// RCS-ID: $Id$
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
{
// New page starting at this line
int newY = rect.y;
-
+
// We increase the offset by the difference between new and old positions
-
+
int increaseOffsetBy = lineY - newY;
yOffset += increaseOffsetBy;
-
+
m_pageBreaksStart.Add(lastStartPos);
m_pageBreaksEnd.Add(lastLine->GetAbsoluteRange().GetEnd());
m_pageYOffsets.Add(yOffset);
-
+
lastStartPos = line->GetAbsoluteRange().GetStart();
m_numPages ++;
}
}
// Closing page break
- if (m_pageBreaksStart.GetCount() == 0 || (m_pageBreaksEnd[m_pageBreaksEnd.GetCount()-1] < (GetRichTextBuffer()->GetOwnRange().GetEnd()-1)))
- {
- m_pageBreaksStart.Add(lastStartPos);
- m_pageBreaksEnd.Add(GetRichTextBuffer()->GetOwnRange().GetEnd());
- m_pageYOffsets.Add(yOffset);
- }
+ m_pageBreaksStart.Add(lastStartPos);
+ m_pageBreaksEnd.Add(GetRichTextBuffer()->GetOwnRange().GetEnd());
+ m_pageYOffsets.Add(yOffset);
}
}
m_richTextBufferPreview = buf;
}
+#if wxUSE_FFILE && wxUSE_STREAMS
bool wxRichTextPrinting::PreviewFile(const wxString& richTextFile)
{
SetRichTextBufferPreview(new wxRichTextBuffer);
p2->SetRichTextBuffer(m_richTextBufferPrinting);
return DoPreview(p1, p2);
}
+#endif // wxUSE_FFILE && wxUSE_STREAMS
bool wxRichTextPrinting::PreviewBuffer(const wxRichTextBuffer& buffer)
{
return DoPreview(p1, p2);
}
+#if wxUSE_FFILE && wxUSE_STREAMS
bool wxRichTextPrinting::PrintFile(const wxString& richTextFile, bool showPrintDialog)
{
SetRichTextBufferPrinting(new wxRichTextBuffer);
delete p;
return ret;
}
+#endif // wxUSE_FFILE && wxUSE_STREAMS
bool wxRichTextPrinting::PrintBuffer(const wxRichTextBuffer& buffer, bool showPrintDialog)
{