1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
From 7ec7a07f6ef1e4cbc27f51a5b54edf4442125b29 Mon Sep 17 00:00:00 2001
From: Petr Mladek <pmladek@walk.suse.cz>
Date: Fri, 18 Jun 2010 17:44:23 +0000
Subject: Fix calc-perf-speedup-pagebreak-update.diff to apply with patch-2.5.4
* patches/dev300/calc-perf-speedup-pagebreak-update.diff: add context to help
patch-2.5.4 to apply the hunks correctly; thanks Sandor Geller <wildy at
muhelybt dot hu
---
diff --git a/patches/dev300/calc-perf-speedup-pagebreak-update.diff b/patches/dev300/calc-perf-speedup-pagebreak-update.diff
index ba4b938..0856eae 100644
--- a/patches/dev300/calc-perf-speedup-pagebreak-update.diff
+++ b/patches/dev300/calc-perf-speedup-pagebreak-update.diff
@@ -574,7 +574,19 @@ index 789de6d..56c7f49 100644
}
}
-@@ -2519,7 +2558,7 @@ void ScTable::DBShowRows(SCROW nRow1, SCROW nRow2, BOOL bShow)
+@@ -2516,31 +2516,31 @@ void ScTable::DBShowRows(SCROW nRow1, SC
+ {
+ SCROW nStartRow = nRow1;
+ while (nStartRow <= nRow2)
+ {
+ SCROW nEndRow = -1;
+ bool bWasVis = !RowHidden(nStartRow, nEndRow);
+ if (nEndRow > nRow2)
+ nEndRow = nRow2;
+
+ BOOL bChanged = ( bWasVis != bShow );
+ if ( bChanged )
+ {
ScDrawLayer* pDrawLayer = pDocument->GetDrawLayer();
if (pDrawLayer)
{
@@ -583,7 +595,31 @@ index 789de6d..56c7f49 100644
if (bShow)
pDrawLayer->HeightChanged( nTab, nStartRow, nHeight );
else
-@@ -2569,7 +2608,7 @@ void ScTable::ShowRows(SCROW nRow1, SCROW nRow2, BOOL bShow)
+ pDrawLayer->HeightChanged( nTab, nStartRow, -nHeight );
+ }
+ }
+
+ SetRowHidden(nStartRow, nEndRow, !bShow);
+ SetRowFiltered(nStartRow, nEndRow, !bShow);
+
+ if ( bChanged )
+ {
+ ScChartListenerCollection* pCharts = pDocument->GetChartListenerCollection();
+ if ( pCharts )
+ pCharts->SetRangeDirty(ScRange( 0, nStartRow, nTab, MAXCOL, nEndRow, nTab ));
+@@ -2563,31 +2563,31 @@ void ScTable::ShowRows(SCROW nRow1, SCRO
+ IncRecalcLevel();
+ InitializeNoteCaptions();
+ while (nStartRow <= nRow2)
+ {
+ SCROW nEndRow = -1;
+ bool bWasVis = !RowHidden(nStartRow, nEndRow);
+ if (nEndRow > nRow2)
+ nEndRow = nRow2;
+
+ BOOL bChanged = ( bWasVis != bShow );
+ if ( bChanged )
+ {
ScDrawLayer* pDrawLayer = pDocument->GetDrawLayer();
if (pDrawLayer)
{
@@ -592,6 +628,18 @@ index 789de6d..56c7f49 100644
if (bShow)
pDrawLayer->HeightChanged( nTab, nStartRow, nHeight );
else
+ pDrawLayer->HeightChanged( nTab, nStartRow, -nHeight );
+ }
+ }
+
+ SetRowHidden(nStartRow, nEndRow, !bShow);
+ if (bShow)
+ SetRowFiltered(nStartRow, nEndRow, false);
+
+ if ( bChanged )
+ {
+ ScChartListenerCollection* pCharts = pDocument->GetChartListenerCollection();
+ if ( pCharts )
@@ -2681,7 +2720,10 @@ SCROW ScTable::GetLastChangedRow() const
if (!ValidRow(nLastFlags))
nLastFlags = 0;
--
cgit v0.8.3-6-g21f6
|