Kaydet (Commit) 30d83b0a authored tarafından Miklos Vajna's avatar Miklos Vajna

Add SwXTextDocument::setTextSelection() testcase

Change-Id: Id986d5408981b6ae7bf3c8c96c5226d2445a5f0d
üst 8654e16f
...@@ -82,7 +82,7 @@ There are currently two known LOK clients supporting tiled editing: ...@@ -82,7 +82,7 @@ There are currently two known LOK clients supporting tiled editing:
Core has next to no idea what is the LOK client, so for effective development, Core has next to no idea what is the LOK client, so for effective development,
it's recommended that the core part is developed against gtktiledviewer, and it's recommended that the core part is developed against gtktiledviewer, and
once a feature works there, then implement the Android part, with is slower once a feature works there, then implement the Android part, with its slower
development iteration (slow uploading to the device, the need to link all development iteration (slow uploading to the device, the need to link all
object files into a single .so, etc). object files into a single .so, etc).
......
<?xml version="1.0" encoding="UTF-8"?>
<office:document xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:rpt="http://openoffice.org/2005/report" xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:grddl="http://www.w3.org/2003/g/data-view#" xmlns:officeooo="http://openoffice.org/2009/office" xmlns:tableooo="http://openoffice.org/2009/table" xmlns:drawooo="http://openoffice.org/2010/draw" xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0" xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0" xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0" xmlns:css3t="http://www.w3.org/TR/css3-text/" office:version="1.2" office:mimetype="application/vnd.oasis.opendocument.text">
<office:body>
<office:text>
<text:p>Aaa bbb.</text:p>
</office:text>
</office:body>
</office:document>
...@@ -22,10 +22,12 @@ class SwTiledRenderingTest : public SwModelTestBase ...@@ -22,10 +22,12 @@ class SwTiledRenderingTest : public SwModelTestBase
{ {
public: public:
void testSetTextSelection();
void testSetGraphicSelection(); void testSetGraphicSelection();
void testResetSelection(); void testResetSelection();
CPPUNIT_TEST_SUITE(SwTiledRenderingTest); CPPUNIT_TEST_SUITE(SwTiledRenderingTest);
CPPUNIT_TEST(testSetTextSelection);
CPPUNIT_TEST(testSetGraphicSelection); CPPUNIT_TEST(testSetGraphicSelection);
CPPUNIT_TEST(testResetSelection); CPPUNIT_TEST(testResetSelection);
CPPUNIT_TEST_SUITE_END(); CPPUNIT_TEST_SUITE_END();
...@@ -44,6 +46,26 @@ SwXTextDocument* SwTiledRenderingTest::createDoc(const char* pName) ...@@ -44,6 +46,26 @@ SwXTextDocument* SwTiledRenderingTest::createDoc(const char* pName)
return pTextDocument; return pTextDocument;
} }
void SwTiledRenderingTest::testSetTextSelection()
{
SwXTextDocument* pXTextDocument = createDoc("set-text-selection.fodt");
SwWrtShell* pWrtShell = pXTextDocument->GetDocShell()->GetWrtShell();
// Move the cursor into the second word.
pWrtShell->Right(CRSR_SKIP_CHARS, /*bSelect=*/false, 5, /*bBasicCall=*/false);
// Create a selection by on the word.
pWrtShell->SelWrd();
SwShellCrsr* pShellCrsr = pWrtShell->getShellCrsr(false);
// Did we indeed manage to select the second word?
CPPUNIT_ASSERT_EQUAL(OUString("bbb"), pShellCrsr->GetTxt());
// Now use setTextSelection() to move the start of the selection 1000 twips left.
Point aStart = pShellCrsr->GetSttPos();
aStart.setX(aStart.getX() - 1000);
pXTextDocument->setTextSelection(LOK_SETTEXTSELECTION_START, aStart.getX(), aStart.getY());
// The new selection must include the first word, too -- but not the ending dot.
CPPUNIT_ASSERT_EQUAL(OUString("Aaa bbb"), pShellCrsr->GetTxt());
}
void SwTiledRenderingTest::testSetGraphicSelection() void SwTiledRenderingTest::testSetGraphicSelection()
{ {
SwXTextDocument* pXTextDocument = createDoc("shape.fodt"); SwXTextDocument* pXTextDocument = createDoc("shape.fodt");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment