printfun.cxx (3ce8cab8) | printfun.cxx (d636f962) |
---|---|
1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance --- 176 unchanged lines hidden (view full) --- 185 SfxPrinter* pDocPrinter = pDoc->GetPrinter(); // auch fuer Preview den Drucker nehmen 186 if (pDocPrinter) 187 aOldPrinterMode = pDocPrinter->GetMapMode(); 188 189 // einheitlicher MapMode ueber alle Aufrufe (z.B. Repaint !!!), 190 // weil die EditEngine sonst unterschiedliche Texthoehen liefert 191 pDev->SetMapMode(MAP_PIXEL); 192 | 1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance --- 176 unchanged lines hidden (view full) --- 185 SfxPrinter* pDocPrinter = pDoc->GetPrinter(); // auch fuer Preview den Drucker nehmen 186 if (pDocPrinter) 187 aOldPrinterMode = pDocPrinter->GetMapMode(); 188 189 // einheitlicher MapMode ueber alle Aufrufe (z.B. Repaint !!!), 190 // weil die EditEngine sonst unterschiedliche Texthoehen liefert 191 pDev->SetMapMode(MAP_PIXEL); 192 |
193 pPageEndX = NULL; 194 pPageEndY = NULL; 195 pPageRows = NULL; | |
196 pBorderItem = NULL; 197 pBackgroundItem = NULL; 198 pShadowItem = NULL; 199 200 pEditEngine = NULL; 201 pEditDefaults = NULL; 202 203 ScStyleSheetPool* pStylePool = pDoc->GetStyleSheetPool(); --- 122 unchanged lines hidden (view full) --- 326{ 327 if (pPageData) 328 { 329 sal_uInt16 nCount = sal::static_int_cast<sal_uInt16>( pPageData->GetCount() ); 330 ScPrintRangeData& rData = pPageData->GetData(nCount); // hochzaehlen 331 332 rData.SetPrintRange( ScRange( nStartCol, nStartRow, nPrintTab, 333 nEndCol, nEndRow, nPrintTab ) ); | 193 pBorderItem = NULL; 194 pBackgroundItem = NULL; 195 pShadowItem = NULL; 196 197 pEditEngine = NULL; 198 pEditDefaults = NULL; 199 200 ScStyleSheetPool* pStylePool = pDoc->GetStyleSheetPool(); --- 122 unchanged lines hidden (view full) --- 323{ 324 if (pPageData) 325 { 326 sal_uInt16 nCount = sal::static_int_cast<sal_uInt16>( pPageData->GetCount() ); 327 ScPrintRangeData& rData = pPageData->GetData(nCount); // hochzaehlen 328 329 rData.SetPrintRange( ScRange( nStartCol, nStartRow, nPrintTab, 330 nEndCol, nEndRow, nPrintTab ) ); |
334 rData.SetPagesX( nPagesX, pPageEndX ); 335 rData.SetPagesY( nTotalY, pPageEndY ); | 331 // #123672# 332 if(maPageEndX.empty()) 333 { 334 OSL_ENSURE(false, "vector access error for maPageEndX (!)"); 335 } 336 else 337 { 338 rData.SetPagesX( nPagesX, &maPageEndX[0]); 339 } |
336 | 340 |
341 // #123672# 342 if(maPageEndY.empty()) 343 { 344 OSL_ENSURE(false, "vector access error for maPageEndY (!)"); 345 } 346 else 347 { 348 rData.SetPagesY( nTotalY, &maPageEndY[0]); 349 } 350 |
|
337 // Einstellungen 338 rData.SetTopDown( aTableParam.bTopDown ); 339 rData.SetAutomatic( !aAreaParam.bPrintArea ); 340 } 341} 342 343ScPrintFunc::~ScPrintFunc() 344{ 345 ScAddress* pTripel = (ScAddress*) aNotePosList.First(); 346 while (pTripel) 347 { 348 delete pTripel; 349 pTripel = (ScAddress*) aNotePosList.Next(); 350 } 351 aNotePosList.Clear(); 352 | 351 // Einstellungen 352 rData.SetTopDown( aTableParam.bTopDown ); 353 rData.SetAutomatic( !aAreaParam.bPrintArea ); 354 } 355} 356 357ScPrintFunc::~ScPrintFunc() 358{ 359 ScAddress* pTripel = (ScAddress*) aNotePosList.First(); 360 while (pTripel) 361 { 362 delete pTripel; 363 pTripel = (ScAddress*) aNotePosList.Next(); 364 } 365 aNotePosList.Clear(); 366 |
353 delete[] pPageEndX; 354 delete[] pPageEndY; 355 delete[] pPageRows; | |
356 delete pEditDefaults; 357 delete pEditEngine; 358 359 // Druckereinstellungen werden jetzt von aussen wiederhergestellt 360 361 // #64294# Fuer DrawingLayer/Charts muss der MapMode am Drucker (RefDevice) immer stimmen 362 SfxPrinter* pDocPrinter = pDoc->GetPrinter(); // auch fuer Preview den Drucker nehmen 363 if (pDocPrinter) --- 2122 unchanged lines hidden (view full) --- 2486 if (bMultiArea) 2487 { 2488 sal_uInt16 nRCount = pDoc->GetPrintRangeCount( nPrintTab ); 2489 for (sal_uInt16 i=0; i<nRCount; i++) 2490 { 2491 CalcZoom(i); 2492 if ( aTableParam.bSkipEmpty ) 2493 for (nY=0; nY<nPagesY; nY++) | 367 delete pEditDefaults; 368 delete pEditEngine; 369 370 // Druckereinstellungen werden jetzt von aussen wiederhergestellt 371 372 // #64294# Fuer DrawingLayer/Charts muss der MapMode am Drucker (RefDevice) immer stimmen 373 SfxPrinter* pDocPrinter = pDoc->GetPrinter(); // auch fuer Preview den Drucker nehmen 374 if (pDocPrinter) --- 2122 unchanged lines hidden (view full) --- 2497 if (bMultiArea) 2498 { 2499 sal_uInt16 nRCount = pDoc->GetPrintRangeCount( nPrintTab ); 2500 for (sal_uInt16 i=0; i<nRCount; i++) 2501 { 2502 CalcZoom(i); 2503 if ( aTableParam.bSkipEmpty ) 2504 for (nY=0; nY<nPagesY; nY++) |
2494 nPages += pPageRows[nY].CountVisible(); | 2505 { 2506 OSL_ENSURE(nY < maPageRows.size(), "vector access error for maPageRows (!)"); 2507 nPages += maPageRows[nY].CountVisible(); 2508 } |
2495 else 2496 nPages += ((long) nPagesX) * nPagesY; 2497 if ( pPageData ) 2498 FillPageData(); 2499 } 2500 } 2501 else 2502 { 2503 CalcZoom(RANGENO_NORANGE); // Zoom berechnen 2504 if ( aTableParam.bSkipEmpty ) 2505 for (nY=0; nY<nPagesY; nY++) | 2509 else 2510 nPages += ((long) nPagesX) * nPagesY; 2511 if ( pPageData ) 2512 FillPageData(); 2513 } 2514 } 2515 else 2516 { 2517 CalcZoom(RANGENO_NORANGE); // Zoom berechnen 2518 if ( aTableParam.bSkipEmpty ) 2519 for (nY=0; nY<nPagesY; nY++) |
2506 nPages += pPageRows[nY].CountVisible(); | 2520 { 2521 OSL_ENSURE(nY < maPageRows.size(), "vector access error for maPageRows (!)"); 2522 nPages += maPageRows[nY].CountVisible(); 2523 } |
2507 else 2508 nPages += ((long) nPagesX) * nPagesY; 2509 if ( pPageData ) 2510 FillPageData(); 2511 } 2512 return nPages; 2513 } 2514 else --- 191 unchanged lines hidden (view full) --- 2706 size_t nCountX; 2707 size_t nCountY; 2708 2709 if (aTableParam.bTopDown) // von oben nach unten 2710 { 2711 nX1 = nStartCol; 2712 for (nCountX=0; nCountX<nPagesX; nCountX++) 2713 { | 2524 else 2525 nPages += ((long) nPagesX) * nPagesY; 2526 if ( pPageData ) 2527 FillPageData(); 2528 } 2529 return nPages; 2530 } 2531 else --- 191 unchanged lines hidden (view full) --- 2723 size_t nCountX; 2724 size_t nCountY; 2725 2726 if (aTableParam.bTopDown) // von oben nach unten 2727 { 2728 nX1 = nStartCol; 2729 for (nCountX=0; nCountX<nPagesX; nCountX++) 2730 { |
2714 nX2 = pPageEndX[nCountX]; | 2731 OSL_ENSURE(nCountX < maPageEndX.size(), "vector access error for maPageEndX (!)"); 2732 nX2 = maPageEndX[nCountX]; |
2715 for (nCountY=0; nCountY<nPagesY; nCountY++) 2716 { | 2733 for (nCountY=0; nCountY<nPagesY; nCountY++) 2734 { |
2717 nY1 = pPageRows[nCountY].GetStartRow(); 2718 nY2 = pPageRows[nCountY].GetEndRow(); 2719 if ( !aTableParam.bSkipEmpty || !pPageRows[nCountY].IsHidden(nCountX) ) | 2735 OSL_ENSURE(nCountY < maPageRows.size(), "vector access error for maPageRows (!)"); 2736 nY1 = maPageRows[nCountY].GetStartRow(); 2737 nY2 = maPageRows[nCountY].GetEndRow(); 2738 if ( !aTableParam.bSkipEmpty || !maPageRows[nCountY].IsHidden(nCountX) ) |
2720 { 2721 if ( rPageRanges.IsSelected( nPageNo+nStartPage+1 ) ) 2722 { 2723 PrintPage( nPageNo+nDisplayStart, nX1, nY1, nX2, nY2, 2724 bDoPrint, pLocationData ); 2725 ++nPrinted; 2726 } 2727 ++nPageNo; 2728 } 2729 } 2730 nX1 = nX2 + 1; 2731 } 2732 } 2733 else // von links nach rechts 2734 { 2735 for (nCountY=0; nCountY<nPagesY; nCountY++) 2736 { | 2739 { 2740 if ( rPageRanges.IsSelected( nPageNo+nStartPage+1 ) ) 2741 { 2742 PrintPage( nPageNo+nDisplayStart, nX1, nY1, nX2, nY2, 2743 bDoPrint, pLocationData ); 2744 ++nPrinted; 2745 } 2746 ++nPageNo; 2747 } 2748 } 2749 nX1 = nX2 + 1; 2750 } 2751 } 2752 else // von links nach rechts 2753 { 2754 for (nCountY=0; nCountY<nPagesY; nCountY++) 2755 { |
2737 nY1 = pPageRows[nCountY].GetStartRow(); 2738 nY2 = pPageRows[nCountY].GetEndRow(); | 2756 OSL_ENSURE(nCountY < maPageRows.size(), "vector access error for maPageRows (!)"); 2757 nY1 = maPageRows[nCountY].GetStartRow(); 2758 nY2 = maPageRows[nCountY].GetEndRow(); |
2739 nX1 = nStartCol; 2740 for (nCountX=0; nCountX<nPagesX; nCountX++) 2741 { | 2759 nX1 = nStartCol; 2760 for (nCountX=0; nCountX<nPagesX; nCountX++) 2761 { |
2742 nX2 = pPageEndX[nCountX]; 2743 if ( !aTableParam.bSkipEmpty || !pPageRows[nCountY].IsHidden(nCountX) ) | 2762 OSL_ENSURE(nCountX < maPageEndX.size(), "vector access error for maPageEndX (!)"); 2763 nX2 = maPageEndX[nCountX]; 2764 if ( !aTableParam.bSkipEmpty || !maPageRows[nCountY].IsHidden(nCountX) ) |
2744 { 2745 if ( rPageRanges.IsSelected( nPageNo+nStartPage+1 ) ) 2746 { 2747 PrintPage( nPageNo+nDisplayStart, nX1, nY1, nX2, nY2, 2748 bDoPrint, pLocationData ); 2749 ++nPrinted; 2750 } 2751 ++nPageNo; --- 204 unchanged lines hidden (view full) --- 2956} 2957 2958void ScPrintFunc::ResetBreaks( SCTAB nTab ) // Breaks fuer Anzeige richtig setzen 2959{ 2960 pDoc->SetPageSize( nTab, GetDocPageSize() ); 2961 pDoc->UpdatePageBreaks( nTab, NULL ); 2962} 2963 | 2765 { 2766 if ( rPageRanges.IsSelected( nPageNo+nStartPage+1 ) ) 2767 { 2768 PrintPage( nPageNo+nDisplayStart, nX1, nY1, nX2, nY2, 2769 bDoPrint, pLocationData ); 2770 ++nPrinted; 2771 } 2772 ++nPageNo; --- 204 unchanged lines hidden (view full) --- 2977} 2978 2979void ScPrintFunc::ResetBreaks( SCTAB nTab ) // Breaks fuer Anzeige richtig setzen 2980{ 2981 pDoc->SetPageSize( nTab, GetDocPageSize() ); 2982 pDoc->UpdatePageBreaks( nTab, NULL ); 2983} 2984 |
2964void lcl_SetHidden( ScDocument* pDoc, SCTAB nPrintTab, ScPageRowEntry& rPageRowEntry, 2965 SCCOL nStartCol, const SCCOL* pPageEndX ) | 2985void lcl_SetHidden( ScDocument* pDoc, SCTAB nPrintTab, ScPageRowEntry& rPageRowEntry, SCCOL nStartCol, const std::vector< SCCOL >& aPageEndX) |
2966{ 2967 size_t nPagesX = rPageRowEntry.GetPagesX(); 2968 SCROW nStartRow = rPageRowEntry.GetStartRow(); 2969 SCROW nEndRow = rPageRowEntry.GetEndRow(); 2970 2971 sal_Bool bLeftIsEmpty = sal_False; 2972 ScRange aTempRange; 2973 Rectangle aTempRect = pDoc->GetMMRect( 0,0, 0,0, 0 ); 2974 2975 for (size_t i=0; i<nPagesX; i++) 2976 { | 2986{ 2987 size_t nPagesX = rPageRowEntry.GetPagesX(); 2988 SCROW nStartRow = rPageRowEntry.GetStartRow(); 2989 SCROW nEndRow = rPageRowEntry.GetEndRow(); 2990 2991 sal_Bool bLeftIsEmpty = sal_False; 2992 ScRange aTempRange; 2993 Rectangle aTempRect = pDoc->GetMMRect( 0,0, 0,0, 0 ); 2994 2995 for (size_t i=0; i<nPagesX; i++) 2996 { |
2977 SCCOL nEndCol = pPageEndX[i]; | 2997 OSL_ENSURE(i < aPageEndX.size(), "vector access error for maPageEndX (!)"); 2998 SCCOL nEndCol = aPageEndX[i]; |
2978 if ( pDoc->IsPrintEmpty( nPrintTab, nStartCol, nStartRow, nEndCol, nEndRow, 2979 bLeftIsEmpty, &aTempRange, &aTempRect ) ) 2980 { 2981 rPageRowEntry.SetHidden(i); 2982 bLeftIsEmpty = sal_True; 2983 } 2984 else 2985 bLeftIsEmpty = sal_False; 2986 2987 nStartCol = nEndCol+1; 2988 } 2989} 2990 2991void ScPrintFunc::CalcPages() // berechnet aPageRect und Seiten aus nZoom 2992{ | 2999 if ( pDoc->IsPrintEmpty( nPrintTab, nStartCol, nStartRow, nEndCol, nEndRow, 3000 bLeftIsEmpty, &aTempRange, &aTempRect ) ) 3001 { 3002 rPageRowEntry.SetHidden(i); 3003 bLeftIsEmpty = sal_True; 3004 } 3005 else 3006 bLeftIsEmpty = sal_False; 3007 3008 nStartCol = nEndCol+1; 3009 } 3010} 3011 3012void ScPrintFunc::CalcPages() // berechnet aPageRect und Seiten aus nZoom 3013{ |
2993 if (!pPageEndX) pPageEndX = new SCCOL[MAXCOL+1]; 2994 //performance impact 2995// if (!pPageEndY) pPageEndY = new SCROW[MAXROW+1]; 2996// if (!pPageRows) pPageRows = new ScPageRowEntry[MAXROW+1]; //! vorher zaehlen !!!! | 3014 // #123672# use dynamic mem to react on size changes 3015 if(maPageEndX.size() < MAXCOL+1) 3016 { 3017 maPageEndX.resize(MAXCOL+1, SCCOL()); 3018 } |
2997 2998 pDoc->SetPageSize( nPrintTab, GetDocPageSize() ); 2999 if (aAreaParam.bPrintArea) 3000 { 3001 ScRange aRange( nStartCol, nStartRow, nPrintTab, nEndCol, nEndRow, nPrintTab ); 3002 pDoc->UpdatePageBreaks( nPrintTab, &aRange ); 3003 } 3004 else | 3019 3020 pDoc->SetPageSize( nPrintTab, GetDocPageSize() ); 3021 if (aAreaParam.bPrintArea) 3022 { 3023 ScRange aRange( nStartCol, nStartRow, nPrintTab, nEndCol, nEndRow, nPrintTab ); 3024 pDoc->UpdatePageBreaks( nPrintTab, &aRange ); 3025 } 3026 else |
3027 { |
|
3005 pDoc->UpdatePageBreaks( nPrintTab, NULL ); // sonst wird das Ende markiert | 3028 pDoc->UpdatePageBreaks( nPrintTab, NULL ); // sonst wird das Ende markiert |
3006 SCROW nRealCnt = nEndRow-nStartRow+1; 3007 if (!pPageEndY) pPageEndY = new SCROW[nRealCnt+1]; 3008 if (!pPageRows) pPageRows = new ScPageRowEntry[nRealCnt+1]; //! vorher zaehlen !!!! | 3029 } 3030 3031 const SCROW nRealCnt = nEndRow-nStartRow+1; 3032 3033 // #123672# use dynamic mem to react on size changes 3034 if(maPageEndY.size() < nRealCnt+1) 3035 { 3036 maPageEndY.resize(nRealCnt+1, SCROW()); 3037 } 3038 3039 // #123672# use dynamic mem to react on size changes 3040 if(maPageRows.size() < nRealCnt+1) 3041 { 3042 maPageRows.resize(nRealCnt+1, ScPageRowEntry()); 3043 } 3044 |
3009 // 3010 // Seiteneinteilung nach Umbruechen in Col/RowFlags 3011 // Von mehreren Umbruechen in einem ausgeblendeten Bereich zaehlt nur einer. 3012 // 3013 3014 nPagesX = 0; 3015 nPagesY = 0; 3016 nTotalY = 0; 3017 3018 bool bVisCol = false; 3019 SCCOL nLastCol = -1; 3020 for (SCCOL i=nStartCol; i<=nEndCol; i++) 3021 { 3022 bool bHidden = pDoc->ColHidden(i, nPrintTab, nLastCol); 3023 bool bPageBreak = (pDoc->HasColBreak(i, nPrintTab) & BREAK_PAGE); 3024 if ( i>nStartCol && bVisCol && bPageBreak ) 3025 { | 3045 // 3046 // Seiteneinteilung nach Umbruechen in Col/RowFlags 3047 // Von mehreren Umbruechen in einem ausgeblendeten Bereich zaehlt nur einer. 3048 // 3049 3050 nPagesX = 0; 3051 nPagesY = 0; 3052 nTotalY = 0; 3053 3054 bool bVisCol = false; 3055 SCCOL nLastCol = -1; 3056 for (SCCOL i=nStartCol; i<=nEndCol; i++) 3057 { 3058 bool bHidden = pDoc->ColHidden(i, nPrintTab, nLastCol); 3059 bool bPageBreak = (pDoc->HasColBreak(i, nPrintTab) & BREAK_PAGE); 3060 if ( i>nStartCol && bVisCol && bPageBreak ) 3061 { |
3026 pPageEndX[nPagesX] = i-1; | 3062 OSL_ENSURE(nPagesX < maPageEndX.size(), "vector access error for maPageEndX (!)"); 3063 maPageEndX[nPagesX] = i-1; |
3027 ++nPagesX; 3028 bVisCol = false; 3029 } 3030 if (!bHidden) 3031 bVisCol = true; 3032 } 3033 if (bVisCol) // auch am Ende keine leeren Seiten 3034 { | 3064 ++nPagesX; 3065 bVisCol = false; 3066 } 3067 if (!bHidden) 3068 bVisCol = true; 3069 } 3070 if (bVisCol) // auch am Ende keine leeren Seiten 3071 { |
3035 pPageEndX[nPagesX] = nEndCol; | 3072 OSL_ENSURE(nPagesX < maPageEndX.size(), "vector access error for maPageEndX (!)"); 3073 maPageEndX[nPagesX] = nEndCol; |
3036 ++nPagesX; 3037 } 3038 3039 bool bVisRow = false; 3040 SCROW nPageStartRow = nStartRow; 3041 SCROW nLastVisibleRow = -1; 3042 3043 ::boost::scoped_ptr<ScRowBreakIterator> pRowBreakIter(pDoc->GetRowBreakIterator(nPrintTab)); --- 5 unchanged lines hidden (view full) --- 3049 for (SCROW nRow = nStartRow; nRow <= nEndRow; ++nRow) 3050 { 3051 bool bPageBreak = (nNextPageBreak == nRow); 3052 if (bPageBreak) 3053 nNextPageBreak = pRowBreakIter->next(); 3054 3055 if (nRow > nStartRow && bVisRow && bPageBreak ) 3056 { | 3074 ++nPagesX; 3075 } 3076 3077 bool bVisRow = false; 3078 SCROW nPageStartRow = nStartRow; 3079 SCROW nLastVisibleRow = -1; 3080 3081 ::boost::scoped_ptr<ScRowBreakIterator> pRowBreakIter(pDoc->GetRowBreakIterator(nPrintTab)); --- 5 unchanged lines hidden (view full) --- 3087 for (SCROW nRow = nStartRow; nRow <= nEndRow; ++nRow) 3088 { 3089 bool bPageBreak = (nNextPageBreak == nRow); 3090 if (bPageBreak) 3091 nNextPageBreak = pRowBreakIter->next(); 3092 3093 if (nRow > nStartRow && bVisRow && bPageBreak ) 3094 { |
3057 pPageEndY[nTotalY] = nRow-1; | 3095 OSL_ENSURE(nTotalY < maPageEndY.size(), "vector access error for maPageEndY (!)"); 3096 maPageEndY[nTotalY] = nRow-1; |
3058 ++nTotalY; 3059 3060 if ( !aTableParam.bSkipEmpty || 3061 !pDoc->IsPrintEmpty( nPrintTab, nStartCol, nPageStartRow, nEndCol, nRow-1 ) ) 3062 { | 3097 ++nTotalY; 3098 3099 if ( !aTableParam.bSkipEmpty || 3100 !pDoc->IsPrintEmpty( nPrintTab, nStartCol, nPageStartRow, nEndCol, nRow-1 ) ) 3101 { |
3063 pPageRows[nPagesY].SetStartRow( nPageStartRow ); 3064 pPageRows[nPagesY].SetEndRow( nRow-1 ); 3065 pPageRows[nPagesY].SetPagesX( nPagesX ); | 3102 OSL_ENSURE(nPagesY < maPageRows.size(), "vector access error for maPageRows (!)"); 3103 maPageRows[nPagesY].SetStartRow( nPageStartRow ); 3104 maPageRows[nPagesY].SetEndRow( nRow-1 ); 3105 maPageRows[nPagesY].SetPagesX( nPagesX ); |
3066 if (aTableParam.bSkipEmpty) | 3106 if (aTableParam.bSkipEmpty) |
3067 lcl_SetHidden( pDoc, nPrintTab, pPageRows[nPagesY], nStartCol, pPageEndX ); | 3107 lcl_SetHidden( pDoc, nPrintTab, maPageRows[nPagesY], nStartCol, maPageEndX ); |
3068 ++nPagesY; 3069 } 3070 3071 nPageStartRow = nRow; 3072 bVisRow = false; 3073 } 3074 3075 if (nRow <= nLastVisibleRow) --- 12 unchanged lines hidden (view full) --- 3088 } 3089 else 3090 // skip all hidden rows. 3091 nRow = nLastRow; 3092 } 3093 3094 if (bVisRow) 3095 { | 3108 ++nPagesY; 3109 } 3110 3111 nPageStartRow = nRow; 3112 bVisRow = false; 3113 } 3114 3115 if (nRow <= nLastVisibleRow) --- 12 unchanged lines hidden (view full) --- 3128 } 3129 else 3130 // skip all hidden rows. 3131 nRow = nLastRow; 3132 } 3133 3134 if (bVisRow) 3135 { |
3096 pPageEndY[nTotalY] = nEndRow; | 3136 OSL_ENSURE(nTotalY < maPageEndY.size(), "vector access error for maPageEndY (!)"); 3137 maPageEndY[nTotalY] = nEndRow; |
3097 ++nTotalY; 3098 3099 if ( !aTableParam.bSkipEmpty || 3100 !pDoc->IsPrintEmpty( nPrintTab, nStartCol, nPageStartRow, nEndCol, nEndRow ) ) 3101 { | 3138 ++nTotalY; 3139 3140 if ( !aTableParam.bSkipEmpty || 3141 !pDoc->IsPrintEmpty( nPrintTab, nStartCol, nPageStartRow, nEndCol, nEndRow ) ) 3142 { |
3102 pPageRows[nPagesY].SetStartRow( nPageStartRow ); 3103 pPageRows[nPagesY].SetEndRow( nEndRow ); 3104 pPageRows[nPagesY].SetPagesX( nPagesX ); | 3143 OSL_ENSURE(nPagesY < maPageRows.size(), "vector access error for maPageRows (!)"); 3144 maPageRows[nPagesY].SetStartRow( nPageStartRow ); 3145 maPageRows[nPagesY].SetEndRow( nEndRow ); 3146 maPageRows[nPagesY].SetPagesX( nPagesX ); |
3105 if (aTableParam.bSkipEmpty) | 3147 if (aTableParam.bSkipEmpty) |
3106 lcl_SetHidden( pDoc, nPrintTab, pPageRows[nPagesY], nStartCol, pPageEndX ); | 3148 lcl_SetHidden( pDoc, nPrintTab, maPageRows[nPagesY], nStartCol, maPageEndX ); |
3107 ++nPagesY; 3108 } 3109 } 3110} 3111 3112//------------------------------------------------------------------------ 3113// class ScJobSetup 3114//------------------------------------------------------------------------ --- 18 unchanged lines hidden --- | 3149 ++nPagesY; 3150 } 3151 } 3152} 3153 3154//------------------------------------------------------------------------ 3155// class ScJobSetup 3156//------------------------------------------------------------------------ --- 18 unchanged lines hidden --- |