[Libreoffice-commits] core.git: Branch 'feature/orcus-odf' - 4 commits - sc/qa sc/source
Jaskaran Singh
jvsg1303 at gmail.com
Thu Aug 4 18:46:03 UTC 2016
sc/qa/unit/data/xml/styles.xml | 5 ---
sc/qa/unit/subsequent_filters-test.cxx | 50 ++++++++++++++++++++++++++++++++
sc/source/filter/inc/orcusinterface.hxx | 2 +
sc/source/filter/orcus/interface.cxx | 14 +++++++-
4 files changed, 64 insertions(+), 7 deletions(-)
New commits:
commit 2ec19dbd744cbc27f31f603fe9f05bffbfd047e3
Author: Jaskaran Singh <jvsg1303 at gmail.com>
Date: Fri Aug 5 00:13:37 2016 +0530
Add diagonal border test for orcus interface
Change-Id: I762e3b5f634b96664a3687e89b1a117895265bee
diff --git a/sc/qa/unit/data/xml/styles.xml b/sc/qa/unit/data/xml/styles.xml
index f6f9183..85c1e49 100644
--- a/sc/qa/unit/data/xml/styles.xml
+++ b/sc/qa/unit/data/xml/styles.xml
@@ -4,10 +4,7 @@
<style:table-cell-properties fo:background-color="#feffcc" fo:border="0.06pt dotted #ffcc12"/>
</style:style>
<style:style style:name="Name2" style:family="table-cell" style:parent-style-name="Text">
- <style:table-cell-properties fo:border-top="0.74pt fine-dashed #ffee11" fo:border-bottom="1.74pt double-thin #aeee11" fo:border-left="0.74pt none #11ee11" fo:border-right="0.22pt dash-dot-dot #05ee11"/>
- </style:style>
- <style:style style:name="Name3" style:family="table-cell" style:parent-style-name="Text">
- <style:table-cell-properties fo:diagonal-bl-tr="1.74pt dashed #ffccee" fo:diagonal-tl-br="0.74pt dash-dot #120000" fo:border-left="none" fo:border-right="0.74pt dotted #000000"/>
+ <style:table-cell-properties fo:diagonal-bl-tr="1.74pt dashed #ffccee" fo:diagonal-tl-br="0.74pt dash-dot #120000" fo:border-left="none" fo:border-right="0.74pt dotted #ff0000"/>
</style:style>
<style:style style:name="Name4" style:family="table-cell" style:parent-style-name="Text">
<style:table-cell-properties fo:border-top="0.74pt double-border #000000" fo:border-bottom="none" fo:border-left="0.74pt solid #000000" fo:border-right="0.74pt dotted #000000"/>
diff --git a/sc/qa/unit/subsequent_filters-test.cxx b/sc/qa/unit/subsequent_filters-test.cxx
index 1f7780a..7ce70ee 100644
--- a/sc/qa/unit/subsequent_filters-test.cxx
+++ b/sc/qa/unit/subsequent_filters-test.cxx
@@ -37,6 +37,7 @@
#include <editeng/fontitem.hxx>
#include <editeng/flditem.hxx>
#include <editeng/justifyitem.hxx>
+#include <editeng/lineitem.hxx>
#include <dbdata.hxx>
#include "validat.hxx"
#include "formulacell.hxx"
@@ -2677,6 +2678,9 @@ void ScFiltersTest::testOrcusODSStyleInterface()
pOrcus->importODS_Styles(aDoc, aValidPath);
ScStyleSheetPool* pStyleSheetPool = aDoc.GetStyleSheetPool();
+ /* Test cases for Style "Name1"
+ * Has Border and Fill.
+ */
ScStyleSheet* pStyleSheet = pStyleSheetPool->FindCaseIns("Name1", SfxStyleFamily::Para);
const SfxPoolItem* pItem = nullptr;
@@ -2700,6 +2704,52 @@ void ScFiltersTest::testOrcusODSStyleInterface()
ASSERT_DOUBLES_EQUAL_MESSAGE("Error with right width", 1, pBoxItem->GetRight()->GetWidth());
ASSERT_DOUBLES_EQUAL_MESSAGE("Error with top width", 1, pBoxItem->GetTop()->GetWidth());
ASSERT_DOUBLES_EQUAL_MESSAGE("Error with bottom width", 1, pBoxItem->GetBottom()->GetWidth());
+
+ CPPUNIT_ASSERT_MESSAGE("Style Name1 : Has Attribute border, but it shouldn't.",
+ !pStyleSheet->GetItemSet().HasItem(ATTR_PROTECTION, &pItem));
+ CPPUNIT_ASSERT_MESSAGE("Style Name1 : Has Attribute font, but it shouldn't.",
+ !pStyleSheet->GetItemSet().HasItem(ATTR_FONT, &pItem));
+ CPPUNIT_ASSERT_MESSAGE("Style Name1 : Has Attribute number format, but it shouldn't.",
+ !pStyleSheet->GetItemSet().HasItem(ATTR_VALUE_FORMAT, &pItem));
+
+ /* Test for Style "Name2"
+ * Has 4 sided borders + Diagonal borders.
+ */
+ pStyleSheet = pStyleSheetPool->FindCaseIns("Name2", SfxStyleFamily::Para);
+
+ CPPUNIT_ASSERT_MESSAGE("Style Name2 : Doesn't have Attribute background, but it should have.",
+ pStyleSheet->GetItemSet().HasItem(ATTR_BORDER, &pItem));
+
+ pBoxItem = static_cast<const SvxBoxItem*>(pItem);
+ CPPUNIT_ASSERT_EQUAL(Color(0, 0, 0), pBoxItem->GetLeft()->GetColor());
+ CPPUNIT_ASSERT_EQUAL(Color(255, 0, 0), pBoxItem->GetRight()->GetColor());
+ CPPUNIT_ASSERT_EQUAL(pBoxItem->GetLeft()->GetBorderLineStyle(), ::com::sun::star::table::BorderLineStyle::SOLID);
+ CPPUNIT_ASSERT_EQUAL(pBoxItem->GetRight()->GetBorderLineStyle(), ::com::sun::star::table::BorderLineStyle::DOTTED);
+ ASSERT_DOUBLES_EQUAL_MESSAGE("Error with left width", 0, pBoxItem->GetLeft()->GetWidth());
+ ASSERT_DOUBLES_EQUAL_MESSAGE("Error with right width", 14, pBoxItem->GetRight()->GetWidth());
+
+ CPPUNIT_ASSERT_MESSAGE("Style Name2 : Doesn't have Attribute diagonal(tl-br) border, but it should have.",
+ pStyleSheet->GetItemSet().HasItem(ATTR_BORDER_TLBR, &pItem));
+
+ const SvxLineItem* pTLBR= static_cast<const SvxLineItem*>(pItem);
+ CPPUNIT_ASSERT_EQUAL(Color(18, 0, 0), pTLBR->GetLine()->GetColor());
+ CPPUNIT_ASSERT_EQUAL(pTLBR->GetLine()->GetBorderLineStyle(), ::com::sun::star::table::BorderLineStyle::DASH_DOT);
+ ASSERT_DOUBLES_EQUAL_MESSAGE("Error with diagonal tl-br width", 14, pTLBR->GetLine()->GetWidth());
+
+ CPPUNIT_ASSERT_MESSAGE("Style Name2 : Doesn't have Attribute diagonal(bl-tr) border, but it should have.",
+ pStyleSheet->GetItemSet().HasItem(ATTR_BORDER_BLTR, &pItem));
+
+ const SvxLineItem* pBLTR= static_cast<const SvxLineItem*>(pItem);
+ CPPUNIT_ASSERT_EQUAL(Color(255, 204, 238), pBLTR->GetLine()->GetColor());
+ CPPUNIT_ASSERT_EQUAL(pBLTR->GetLine()->GetBorderLineStyle(), ::com::sun::star::table::BorderLineStyle::DASHED);
+ ASSERT_DOUBLES_EQUAL_MESSAGE("Error with diagonal tl-br width", 34, pBLTR->GetLine()->GetWidth());
+
+ CPPUNIT_ASSERT_MESSAGE("Style Name2 : Has Attribute background, but it shouldn't.",
+ !pStyleSheet->GetItemSet().HasItem(ATTR_BACKGROUND, &pItem));
+ CPPUNIT_ASSERT_MESSAGE("Style Name2 : Has Attribute font, but it shouldn't.",
+ !pStyleSheet->GetItemSet().HasItem(ATTR_FONT, &pItem));
+ CPPUNIT_ASSERT_MESSAGE("Style Name2 : Has Attribute number format, but it shouldn't.",
+ !pStyleSheet->GetItemSet().HasItem(ATTR_VALUE_FORMAT, &pItem));
}
#endif
commit 5b01704f51ec389b05fc979d452fc26963685cca
Author: Jaskaran Singh <jvsg1303 at gmail.com>
Date: Fri Aug 5 00:12:11 2016 +0530
Fix a bug in border import in orcus interface
Change-Id: Ic058787b1779f7731c0fe60d73b221011abe2b6c
diff --git a/sc/source/filter/orcus/interface.cxx b/sc/source/filter/orcus/interface.cxx
index f2d3b7c..342a59f 100644
--- a/sc/source/filter/orcus/interface.cxx
+++ b/sc/source/filter/orcus/interface.cxx
@@ -898,7 +898,7 @@ void ScOrcusStyles::border::applyToItemSet(SfxItemSet& rSet) const
editeng::SvxBorderLine aLine(¤t_border_line.second.maColor, current_border_line.second.mnWidth, current_border_line.second.mestyle);
aDiagonal_TLBR.SetLine(&aLine);
}
- if (current_border_line.first == orcus::spreadsheet::border_direction_t::diagonal_bl_tr)
+ else if (current_border_line.first == orcus::spreadsheet::border_direction_t::diagonal_bl_tr)
{
editeng::SvxBorderLine aLine(¤t_border_line.second.maColor, current_border_line.second.mnWidth, current_border_line.second.mestyle);
aDiagonal_BLTR.SetLine(&aLine);
commit 7f37769a2b84f6ea5be35b71120f2ad7bbf60b46
Author: Jaskaran Singh <jvsg1303 at gmail.com>
Date: Fri Aug 5 00:10:43 2016 +0530
Fix a typo in border style import in orcus interface
Change-Id: Ib8dcf0cb031ed39987b14706026f658bbea0a080
diff --git a/sc/source/filter/orcus/interface.cxx b/sc/source/filter/orcus/interface.cxx
index 0151045..f2d3b7c 100644
--- a/sc/source/filter/orcus/interface.cxx
+++ b/sc/source/filter/orcus/interface.cxx
@@ -896,12 +896,12 @@ void ScOrcusStyles::border::applyToItemSet(SfxItemSet& rSet) const
if (current_border_line.first == orcus::spreadsheet::border_direction_t::diagonal_tl_br)
{
editeng::SvxBorderLine aLine(¤t_border_line.second.maColor, current_border_line.second.mnWidth, current_border_line.second.mestyle);
- aDiagonal_BLTR.SetLine(&aLine);
+ aDiagonal_TLBR.SetLine(&aLine);
}
if (current_border_line.first == orcus::spreadsheet::border_direction_t::diagonal_bl_tr)
{
editeng::SvxBorderLine aLine(¤t_border_line.second.maColor, current_border_line.second.mnWidth, current_border_line.second.mestyle);
- aDiagonal_TLBR.SetLine(&aLine);
+ aDiagonal_BLTR.SetLine(&aLine);
}
else
{
commit fa262141e2370d3335a0010bd5465a9a72ecf29f
Author: Jaskaran Singh <jvsg1303 at gmail.com>
Date: Fri Aug 5 00:09:10 2016 +0530
Initialize border attributes in orcus interface
Change-Id: I99994147830e96bea07f52fc6f2575f05cb0a40f
diff --git a/sc/source/filter/inc/orcusinterface.hxx b/sc/source/filter/inc/orcusinterface.hxx
index 8359ca4..c7676ca 100644
--- a/sc/source/filter/inc/orcusinterface.hxx
+++ b/sc/source/filter/inc/orcusinterface.hxx
@@ -299,6 +299,8 @@ private:
SvxBorderStyle mestyle;
Color maColor;
double mnWidth;
+
+ border_line();
};
std::map<orcus::spreadsheet::border_direction_t, border_line> border_lines;
diff --git a/sc/source/filter/orcus/interface.cxx b/sc/source/filter/orcus/interface.cxx
index 1d95b66..0151045 100644
--- a/sc/source/filter/orcus/interface.cxx
+++ b/sc/source/filter/orcus/interface.cxx
@@ -847,6 +847,14 @@ void ScOrcusStyles::protection::applyToItemSet(SfxItemSet& rSet) const
ScOrcusStyles::border::border():
mbHasBorderAttr(false)
{
+ border_line();
+}
+
+ScOrcusStyles::border::border_line::border_line():
+ mestyle(::com::sun::star::table::BorderLineStyle::SOLID),
+ maColor(COL_WHITE),
+ mnWidth(0)
+{
}
namespace {
More information about the Libreoffice-commits
mailing list