Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
core
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
LibreOffice
core
Commits
d053d40e
Kaydet (Commit)
d053d40e
authored
Nis 22, 2014
tarafından
Kohei Yoshida
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
Skip adjustment of row height when all rows have the same height.
Change-Id: I490ecade6b909bcf36b848c05e198d58adc90e0a
üst
832bee9a
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
41 additions
and
6 deletions
+41
-6
document.hxx
sc/inc/document.hxx
+2
-0
table.hxx
sc/inc/table.hxx
+2
-0
document10.cxx
sc/source/core/data/document10.cxx
+9
-0
table7.cxx
sc/source/core/data/table7.cxx
+14
-0
dbdocfun.cxx
sc/source/ui/docshell/dbdocfun.cxx
+14
-6
No files found.
sc/inc/document.hxx
Dosyayı görüntüle @
d053d40e
...
...
@@ -1572,6 +1572,8 @@ public:
SC_DLLPUBLIC
bool
IsManualRowHeight
(
SCROW
nRow
,
SCTAB
nTab
)
const
;
bool
HasUniformRowHeight
(
SCTAB
nTab
,
SCROW
nRow1
,
SCROW
nRow2
)
const
;
/**
* Write all column row flags to table's flag data, because not all column
* row attributes are stored in the flag data members. This is necessary
...
...
sc/inc/table.hxx
Dosyayı görüntüle @
d053d40e
...
...
@@ -815,6 +815,8 @@ public:
bool
IsManualRowHeight
(
SCROW
nRow
)
const
;
bool
HasUniformRowHeight
(
SCROW
nRow1
,
SCROW
nRow2
)
const
;
void
SyncColRowFlags
();
void
StripHidden
(
SCCOL
&
rX1
,
SCROW
&
rY1
,
SCCOL
&
rX2
,
SCROW
&
rY2
);
...
...
sc/source/core/data/document10.cxx
Dosyayı görüntüle @
d053d40e
...
...
@@ -279,4 +279,13 @@ void ScDocument::UpdateScriptTypes( const ScAddress& rPos, SCCOL nColSize, SCROW
pTab
->
UpdateScriptTypes
(
rPos
.
Col
(),
rPos
.
Row
(),
rPos
.
Col
()
+
nColSize
-
1
,
rPos
.
Row
()
+
nRowSize
-
1
);
}
bool
ScDocument
::
HasUniformRowHeight
(
SCTAB
nTab
,
SCROW
nRow1
,
SCROW
nRow2
)
const
{
const
ScTable
*
pTab
=
FetchTable
(
nTab
);
if
(
!
pTab
)
return
false
;
return
pTab
->
HasUniformRowHeight
(
nRow1
,
nRow2
);
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
sc/source/core/data/table7.cxx
Dosyayı görüntüle @
d053d40e
...
...
@@ -12,6 +12,7 @@
#include <document.hxx>
#include <clipparam.hxx>
#include <bcaslot.hxx>
#include <segmenttree.hxx>
bool
ScTable
::
IsMerged
(
SCCOL
nCol
,
SCROW
nRow
)
const
{
...
...
@@ -110,4 +111,17 @@ void ScTable::UpdateScriptTypes( SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nR
aCol
[
nCol
].
UpdateScriptTypes
(
nRow1
,
nRow2
);
}
bool
ScTable
::
HasUniformRowHeight
(
SCROW
nRow1
,
SCROW
nRow2
)
const
{
if
(
!
ValidRow
(
nRow1
)
||
!
ValidRow
(
nRow2
)
||
nRow1
>
nRow2
)
return
false
;
ScFlatUInt16RowSegments
::
RangeData
aData
;
if
(
!
mpRowHeights
->
getRangeData
(
nRow1
,
aData
))
// Search failed.
return
false
;
return
nRow2
<=
aData
.
mnRow2
;
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
sc/source/ui/docshell/dbdocfun.cxx
Dosyayı görüntüle @
d053d40e
...
...
@@ -490,13 +490,19 @@ bool ScDBDocFunc::Sort( SCTAB nTab, const ScSortParam& rSortParam,
WaitObject
aWait
(
rDocShell
.
GetActiveDialogParent
()
);
SCROW
nStartRow
=
aLocalParam
.
nRow1
+
(
aLocalParam
.
bHasHeader
?
1
:
0
);
// Calculate the script types for all cells in the sort range beforehand.
// This will speed up the row height adjustment that takes place after the
// sort.
pDoc
->
UpdateScriptTypes
(
ScAddress
(
rSortParam
.
nCol1
,
rSortParam
.
nRow1
,
nTab
),
rSortParam
.
nCol2
-
rSortParam
.
nCol1
+
1
,
rSortParam
.
nRow2
-
rSortParam
.
nRow1
+
1
);
ScAddress
(
aLocalParam
.
nCol1
,
nStartRow
,
nTab
),
aLocalParam
.
nCol2
-
aLocalParam
.
nCol1
+
1
,
aLocalParam
.
nRow2
-
nStartRow
+
1
);
// No point adjusting row heights after the sort when all rows have the same height.
bool
bUniformRowHeight
=
pDoc
->
HasUniformRowHeight
(
nTab
,
nStartRow
,
aLocalParam
.
nRow2
);
bool
bRepeatQuery
=
false
;
// bestehenden Filter wiederholen?
ScQueryParam
aQueryParam
;
...
...
@@ -632,8 +638,9 @@ bool ScDBDocFunc::Sort( SCTAB nTab, const ScSortParam& rSortParam,
}
}
ScRange
aDirtyRange
(
aLocalParam
.
nCol1
,
aLocalParam
.
nRow1
,
nTab
,
aLocalParam
.
nCol2
,
aLocalParam
.
nRow2
,
nTab
);
ScRange
aDirtyRange
(
aLocalParam
.
nCol1
,
nStartRow
,
nTab
,
aLocalParam
.
nCol2
,
aLocalParam
.
nRow2
,
nTab
);
pDoc
->
SetDirty
(
aDirtyRange
);
if
(
bPaint
)
...
...
@@ -659,7 +666,8 @@ bool ScDBDocFunc::Sort( SCTAB nTab, const ScSortParam& rSortParam,
rDocShell
.
PostPaint
(
ScRange
(
nStartX
,
nStartY
,
nTab
,
nEndX
,
nEndY
,
nTab
),
nPaint
);
}
rDocShell
.
AdjustRowHeight
(
aLocalParam
.
nRow1
,
aLocalParam
.
nRow2
,
nTab
);
if
(
!
bUniformRowHeight
)
rDocShell
.
AdjustRowHeight
(
nStartRow
,
aLocalParam
.
nRow2
,
nTab
);
// #i59745# set collected drawing undo actions at sorting undo action
if
(
pUndoAction
&&
pDrawLayer
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment