sw/qa/extras/tiledrendering/data/reset-selection.fodt | 17 ---------- sw/qa/extras/tiledrendering/data/shape.fodt | 17 ++++++++++ sw/qa/extras/tiledrendering/tiledrendering.cxx | 28 +++++++++++++++++- 3 files changed, 44 insertions(+), 18 deletions(-)
New commits: commit 5729574929ca82cdf0b7b472cfea1b211a981fa2 Author: Miklos Vajna <[email protected]> Date: Thu Mar 12 10:18:48 2015 +0100 Add SwXTextDocument::setGraphicSelection() testcase Change-Id: I172ef9f5cfdae8cbff88419171c5b8ad55fb194c diff --git a/sw/qa/extras/tiledrendering/data/reset-selection.fodt b/sw/qa/extras/tiledrendering/data/shape.fodt similarity index 100% rename from sw/qa/extras/tiledrendering/data/reset-selection.fodt rename to sw/qa/extras/tiledrendering/data/shape.fodt diff --git a/sw/qa/extras/tiledrendering/tiledrendering.cxx b/sw/qa/extras/tiledrendering/tiledrendering.cxx index de23c69..f67f621 100644 --- a/sw/qa/extras/tiledrendering/tiledrendering.cxx +++ b/sw/qa/extras/tiledrendering/tiledrendering.cxx @@ -8,6 +8,7 @@ */ #include <swmodeltestbase.hxx> +#include <LibreOfficeKit/LibreOfficeKitEnums.h> #include <svx/svdpage.hxx> #include <svx/svdview.hxx> #include <crsskip.hxx> @@ -21,9 +22,11 @@ class SwTiledRenderingTest : public SwModelTestBase { public: + void testSetGraphicSelection(); void testResetSelection(); CPPUNIT_TEST_SUITE(SwTiledRenderingTest); + CPPUNIT_TEST(testSetGraphicSelection); CPPUNIT_TEST(testResetSelection); CPPUNIT_TEST_SUITE_END(); @@ -37,12 +40,35 @@ SwXTextDocument* SwTiledRenderingTest::createDoc(const char* pName) SwXTextDocument* pTextDocument = dynamic_cast<SwXTextDocument*>(mxComponent.get()); CPPUNIT_ASSERT(pTextDocument); + pTextDocument->initializeForTiledRendering(); return pTextDocument; } +void SwTiledRenderingTest::testSetGraphicSelection() +{ + SwXTextDocument* pXTextDocument = createDoc("shape.fodt"); + SwWrtShell* pWrtShell = pXTextDocument->GetDocShell()->GetWrtShell(); + SdrPage* pPage = pWrtShell->GetDoc()->getIDocumentDrawModelAccess().GetDrawModel()->GetPage(0); + SdrObject* pObject = pPage->GetObj(0); + pWrtShell->SelectObj(Point(), 0, pObject); + // Make sure the rectangle has 8 handles: at each corner and at the center of each edge. + CPPUNIT_ASSERT_EQUAL(static_cast<sal_uInt32>(8), pObject->GetHdlCount()); + // Take the bottom center one. + SdrHdl* pHdl = pObject->GetHdl(6); + CPPUNIT_ASSERT_EQUAL(HDL_LOWER, pHdl->GetKind()); + Rectangle aShapeBefore = pObject->GetSnapRect(); + // Resize. + pXTextDocument->setGraphicSelection(LOK_SETGRAPHICSELECTION_START, pHdl->GetPos().getX(), pHdl->GetPos().getY()); + pXTextDocument->setGraphicSelection(LOK_SETGRAPHICSELECTION_END, pHdl->GetPos().getX(), pHdl->GetPos().getY() + 1000); + Rectangle aShapeAfter = pObject->GetSnapRect(); + // Check that a resize happened, but aspect ratio is not kept. + CPPUNIT_ASSERT_EQUAL(aShapeBefore.getWidth(), aShapeAfter.getWidth()); + CPPUNIT_ASSERT_EQUAL(aShapeBefore.getHeight() + 1000, aShapeAfter.getHeight()); +} + void SwTiledRenderingTest::testResetSelection() { - SwXTextDocument* pXTextDocument = createDoc("reset-selection.fodt"); + SwXTextDocument* pXTextDocument = createDoc("shape.fodt"); SwWrtShell* pWrtShell = pXTextDocument->GetDocShell()->GetWrtShell(); // Select one character. pWrtShell->Right(CRSR_SKIP_CHARS, /*bSelect=*/true, 1, /*bBasicCall=*/false); _______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
