View | Details | Raw Unified | Return to issue 88341
Collapse All | Expand All

(-)openoffice.org.orig/sc/source/ui/inc/output.hxx (+1 lines)
Lines 242-247 Link Here
242
	void	DrawExtraShadow(BOOL bLeft, BOOL bTop, BOOL bRight, BOOL bBottom);
242
	void	DrawExtraShadow(BOOL bLeft, BOOL bTop, BOOL bRight, BOOL bBottom);
243
	void	DrawFrame();
243
	void	DrawFrame();
244
244
245
	bool	UseNormalClip(SCROW nCellY, const SfxItemSet* pCondSet);
245
					// with logic MapMode set!
246
					// with logic MapMode set!
246
	void	DrawEdit(BOOL bPixelToLogic);
247
	void	DrawEdit(BOOL bPixelToLogic);
247
248
(-)openoffice.org.orig/sc/source/ui/view/output2.cxx (-9 / +43 lines)
Lines 83-88 Link Here
83
#include "scmod.hxx"
83
#include "scmod.hxx"
84
#include "fillinfo.hxx"
84
#include "fillinfo.hxx"
85
85
86
#include <stdio.h>
87
86
			//!	Autofilter-Breite mit column.cxx zusammenfassen
88
			//!	Autofilter-Breite mit column.cxx zusammenfassen
87
#define DROPDOWN_BITMAP_SIZE		17
89
#define DROPDOWN_BITMAP_SIZE		17
88
90
Lines 2003-2008 Link Here
2003
    }
2005
    }
2004
}
2006
}
2005
2007
2008
bool ScOutputData::UseNormalClip(SCROW nCellY, const SfxItemSet* pCondSet)
2009
{
2010
    bool bNormalClip = false;
2011
	//	Don't clip for text height when printing rows with optimal height,
2012
	//	except when font size is from conditional formatting.
2013
	//!	Allow clipping when vertically merged?
2014
	if ( eType != OUTTYPE_PRINTER ||
2015
		( pDoc->GetRowFlags( nCellY, nTab ) & CR_MANUALSIZE ) ||
2016
		( pCondSet && SFX_ITEM_SET ==
2017
			pCondSet->GetItemState(ATTR_FONT_HEIGHT, TRUE) ) )
2018
		bNormalClip = TRUE;
2019
    return bNormalClip;
2020
}
2021
2022
2006
void ScOutputData::DrawEdit(BOOL bPixelToLogic)
2023
void ScOutputData::DrawEdit(BOOL bPixelToLogic)
2007
{
2024
{
2008
    vcl::PDFExtOutDevData* pPDFData = PTR_CAST( vcl::PDFExtOutDevData, pDev->GetExtOutDevData() );
2025
    vcl::PDFExtOutDevData* pPDFData = PTR_CAST( vcl::PDFExtOutDevData, pDev->GetExtOutDevData() );
Lines 2694-2706 Link Here
2694
											(ScMergeAttr*)&pPattern->GetItem(ATTR_MERGE);
2711
											(ScMergeAttr*)&pPattern->GetItem(ATTR_MERGE);
2695
									BOOL bMerged = pMerge->GetColMerge() > 1 || pMerge->GetRowMerge() > 1;
2712
									BOOL bMerged = pMerge->GetColMerge() > 1 || pMerge->GetRowMerge() > 1;
2696
2713
2697
									//	Don't clip for text height when printing rows with optimal height,
2714
					
2698
									//	except when font size is from conditional formatting.
2715
									if (UseNormalClip(nCellY, pCondSet))
2699
									//!	Allow clipping when vertically merged?
2700
									if ( eType != OUTTYPE_PRINTER ||
2701
										( pDoc->GetRowFlags( nCellY, nTab ) & CR_MANUALSIZE ) ||
2702
										( pCondSet && SFX_ITEM_SET ==
2703
											pCondSet->GetItemState(ATTR_FONT_HEIGHT, TRUE) ) )
2704
										bClip = TRUE;
2716
										bClip = TRUE;
2705
									else
2717
									else
2706
										bSimClip = TRUE;
2718
										bSimClip = TRUE;
Lines 2750-2755 Link Here
2750
#endif
2762
#endif
2751
2763
2752
								Rectangle aLogicClip;
2764
								Rectangle aLogicClip;
2765
                                if (
2766
										((nAttrRotate == 9000) || (nAttrRotate == 27000)) &&
2767
										(!(eOrient==SVX_ORIENTATION_STANDARD && !bAsianVertical)) &&
2768
										(!(bClip || bSimClip))
2769
								   )
2770
								{
2771
									if (UseNormalClip(nCellY, pCondSet))
2772
										bClip = TRUE;
2773
									else
2774
										bSimClip = TRUE;
2775
								}
2776
2753
								if (bClip || bSimClip)
2777
								if (bClip || bSimClip)
2754
								{
2778
								{
2755
									// Clip marks are already handled in GetOutputArea
2779
									// Clip marks are already handled in GetOutputArea
Lines 2805-2814 Link Here
2805
									}
2829
									}
2806
									else
2830
									else
2807
									{
2831
									{
2832
										long nDiff = 0;
2808
										if (eHorJust==SVX_HOR_JUSTIFY_RIGHT)
2833
										if (eHorJust==SVX_HOR_JUSTIFY_RIGHT)
2809
											aLogicStart.X() += nAvailWidth - nEngineWidth;
2834
											nDiff = nAvailWidth - nEngineWidth;
2810
										else if (eHorJust==SVX_HOR_JUSTIFY_CENTER)
2835
										else if (eHorJust==SVX_HOR_JUSTIFY_CENTER)
2811
											aLogicStart.X() += (nAvailWidth - nEngineWidth) / 2;
2836
											nDiff = (nAvailWidth - nEngineWidth) / 2;
2837
2838
										if (nEngineWidth > nAvailWidth)
2839
										{
2840
                                            if (nAttrRotate == 9000)
2841
										        nDiff = 0;
2842
											else if (nAttrRotate == 27000)
2843
										        nDiff = nAvailWidth - nEngineWidth;
2844
										}
2845
										aLogicStart.X() += nDiff;
2812
									}
2846
									}
2813
								}
2847
								}
2814
2848

Return to issue 88341