// A way to force speedy rest-of-buffer layout (the 'else' below)
bool forceQuickLayout = false;
+ // First get the size of the paragraphs we won't be laying out
+ wxRichTextObjectList::compatibility_iterator n = m_children.GetFirst();
+ while (n && n != node)
+ {
+ wxRichTextParagraph* child = wxDynamicCast(n->GetData(), wxRichTextParagraph);
+ if (child)
+ {
+ maxWidth = wxMax(maxWidth, child->GetCachedSize().x);
+ maxMinWidth = wxMax(maxMinWidth, child->GetMinSize().x);
+ maxMaxWidth = wxMax(maxMaxWidth, child->GetMaxSize().x);
+ }
+ n = n->GetNext();
+ }
+
while (node)
{
// Assume this box only contains paragraphs
}
// Get internal padding
- int paddingLeft = 0, paddingRight = 0, paddingTop = 0, paddingBottom = 0;
+ int paddingLeft = 0, paddingTop = 0;
if (GetAttributes().GetTextBoxAttr().GetPadding().GetLeft().IsValid())
paddingLeft = converter.GetPixels(GetAttributes().GetTextBoxAttr().GetPadding().GetLeft());
- if (GetAttributes().GetTextBoxAttr().GetPadding().GetRight().IsValid())
- paddingRight = converter.GetPixels(GetAttributes().GetTextBoxAttr().GetPadding().GetRight());
if (GetAttributes().GetTextBoxAttr().GetPadding().GetTop().IsValid())
paddingTop = converter.GetPixels(GetAttributes().GetTextBoxAttr().GetPadding().GetTop());
- if (GetAttributes().GetTextBoxAttr().GetPadding().GetLeft().IsValid())
- paddingBottom = converter.GetPixels(GetAttributes().GetTextBoxAttr().GetPadding().GetBottom());
// Assume that left and top padding are also used for inter-cell padding.
int paddingX = paddingLeft;