diff options
author | Kurt Zenker <kz@openoffice.org> | 2009-12-02 17:20:50 +0100 |
---|---|---|
committer | Kurt Zenker <kz@openoffice.org> | 2009-12-02 17:20:50 +0100 |
commit | 27a44ea7b53b055ca861e7bec2698e2f14933098 (patch) | |
tree | bf055cd61a01d96891c6a976789ca0f2d035ab3d /svx/source | |
parent | e0ce4fe26103b26bc139df55ee1ca0a09bf910ac (diff) | |
parent | 399c758fd565fa692bf34eb542121827d5ad0f98 (diff) |
CWS-TOOLING: integrate CWS ooo32gsl03_DEV300
Diffstat (limited to 'svx/source')
-rw-r--r-- | svx/source/svdraw/svdotextdecomposition.cxx | 8 | ||||
-rw-r--r-- | svx/source/svdraw/svdpage.cxx | 8 |
2 files changed, 12 insertions, 4 deletions
diff --git a/svx/source/svdraw/svdotextdecomposition.cxx b/svx/source/svdraw/svdotextdecomposition.cxx index e72b606f3b53..934b0f78ca3e 100644 --- a/svx/source/svdraw/svdotextdecomposition.cxx +++ b/svx/source/svdraw/svdotextdecomposition.cxx @@ -818,15 +818,16 @@ void SdrTextObj::impDecomposeBlockTextPrimitive( { // cell text is formated neither like a text object nor like a object // text, so use a special setup here + // #i106214# To work with an unchangeable PaperSize (CellSize in + // this case) Set(Min|Max)AutoPaperSize and SetPaperSize have to be used rOutliner.SetMaxAutoPaperSize(aAnchorTextSize); + rOutliner.SetMinAutoPaperSize(aAnchorTextSize); rOutliner.SetPaperSize(aAnchorTextSize); rOutliner.SetUpdateMode(true); rOutliner.SetText(rSdrBlockTextPrimitive.getOutlinerParaObject()); - rOutliner.SetControlWord(nOriginalControlWord); } else { - if((rSdrBlockTextPrimitive.getWordWrap() || IsTextFrame()) && !rSdrBlockTextPrimitive.getUnlimitedPage()) { // #i103454# maximal paper size hor/ver needs to be limited to text @@ -854,9 +855,10 @@ void SdrTextObj::impDecomposeBlockTextPrimitive( rOutliner.SetPaperSize(aNullSize); rOutliner.SetUpdateMode(true); rOutliner.SetText(rSdrBlockTextPrimitive.getOutlinerParaObject()); - rOutliner.SetControlWord(nOriginalControlWord); } + rOutliner.SetControlWord(nOriginalControlWord); + // now get back the layouted text size from outliner const Size aOutlinerTextSiz(rOutliner.GetPaperSize()); const basegfx::B2DVector aOutlinerScale(aOutlinerTextSiz.Width(), aOutlinerTextSiz.Height()); diff --git a/svx/source/svdraw/svdpage.cxx b/svx/source/svdraw/svdpage.cxx index 05b5b5e5aca6..55e0347e6522 100644 --- a/svx/source/svdraw/svdpage.cxx +++ b/svx/source/svdraw/svdpage.cxx @@ -671,7 +671,13 @@ const Rectangle& SdrObjList::GetAllObjSnapRect() const const Rectangle& SdrObjList::GetAllObjBoundRect() const { - if (bRectsDirty) { + // #i106183# for deep group hierarchies like in chart2, the invalidates + // through the hierarchy are not correct; use a 2nd hint for the needed + // recalculation. Future versions will have no bool flag at all, but + // just aOutRect in empty state to representate an invalid state, thus + // it's a step in the right direction. + if (bRectsDirty || aOutRect.IsEmpty()) + { ((SdrObjList*)this)->RecalcRects(); ((SdrObjList*)this)->bRectsDirty=FALSE; } |