Added drawing context to allow 'virtual' (dynamic) attributes, for e.g. showing bookmarks without affecting the content

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2012-01-17 20:03:13 +00:00
parent 907f09f44b
commit 8db2e3ef15
5 changed files with 622 additions and 225 deletions

View File

@@ -67,7 +67,8 @@ void wxRichTextPrintout::OnPreparePrinting()
{
GetRichTextBuffer()->Invalidate(wxRICHTEXT_ALL);
GetRichTextBuffer()->Layout(*GetDC(), rect, rect, wxRICHTEXT_FIXED_WIDTH|wxRICHTEXT_VARIABLE_HEIGHT);
wxRichTextDrawingContext context(GetRichTextBuffer());
GetRichTextBuffer()->Layout(*GetDC(), context, rect, rect, wxRICHTEXT_FIXED_WIDTH|wxRICHTEXT_VARIABLE_HEIGHT);
// Now calculate the page breaks
@@ -300,7 +301,8 @@ void wxRichTextPrintout::RenderPage(wxDC *dc, int page)
dc->SetClippingRegion(wxRect(textRect.x, textRect.y + yOffset, textRect.width, textRect.height));
GetRichTextBuffer()->Draw(*dc, rangeToDraw, wxRichTextSelection(), textRect, 0 /* descent */, wxRICHTEXT_DRAW_IGNORE_CACHE|wxRICHTEXT_DRAW_PRINT /* flags */);
wxRichTextDrawingContext context(GetRichTextBuffer());
GetRichTextBuffer()->Draw(*dc, context, rangeToDraw, wxRichTextSelection(), textRect, 0 /* descent */, wxRICHTEXT_DRAW_IGNORE_CACHE|wxRICHTEXT_DRAW_PRINT /* flags */);
dc->DestroyClippingRegion();