| 137 | } |
| 138 | |
| 139 | void WorksheetElementTest::referenceRangeXMouseMove() { |
| 140 | SETUP_PROJECT |
| 141 | |
| 142 | auto* referenceRange = new ReferenceRange(p, QStringLiteral("range")); |
| 143 | referenceRange->setOrientation(ReferenceRange::Orientation::Vertical); |
| 144 | p->addChild(referenceRange); |
| 145 | referenceRange->setCoordinateSystemIndex(p->defaultCoordinateSystemIndex()); |
| 146 | referenceRange->setPositionLogical(QPointF(0.5, 0.5)); |
| 147 | |
| 148 | QCOMPARE(referenceRange->positionLogical().x(), 0.5); |
| 149 | QCOMPARE(referenceRange->positionLogical().y(), 0.5); |
| 150 | QCOMPARE(referenceRange->positionLogicalStart().x(), 0.45); |
| 151 | QCOMPARE(referenceRange->positionLogicalEnd().x(), 0.55); |
| 152 | CHECK_REFERENCERANGE_RECT(referenceRange, 0.45, 1., 0.55, 0.); |
| 153 | |
| 154 | // Simulate mouse move |
| 155 | referenceRange->d_ptr->setPos(QPointF(25, -10)); // item change will be called (negative value is up) |
| 156 | QCOMPARE(referenceRange->positionLogical().x(), 0.75); // 25/50 * 0.5 + 0.5 |
| 157 | QCOMPARE(referenceRange->positionLogical().y(), 0.5); // Only horizontal considered |
| 158 | QCOMPARE(referenceRange->positionLogicalStart().x(), 0.7); |
| 159 | QCOMPARE(referenceRange->positionLogicalEnd().x(), 0.8); |
| 160 | |
| 161 | CHECK_REFERENCERANGE_RECT(referenceRange, 0.7, 1., 0.8, 0.); |
| 162 | |
| 163 | // Set Logical Start |
| 164 | referenceRange->setPositionLogicalStart(QPointF(0.1, 0.5)); |
| 165 | QCOMPARE(referenceRange->positionLogical().x(), 0.45); |
| 166 | QCOMPARE(referenceRange->positionLogical().y(), 0.5); |
| 167 | QCOMPARE(referenceRange->positionLogicalStart().x(), 0.1); |
| 168 | QCOMPARE(referenceRange->positionLogicalEnd().x(), 0.8); |
| 169 | |
| 170 | CHECK_REFERENCERANGE_RECT(referenceRange, 0.1, 1., 0.8, 0.); |
| 171 | |
| 172 | // Set Logical End |
| 173 | referenceRange->setPositionLogicalEnd(QPointF(0.3, 0.5)); |
| 174 | QCOMPARE(referenceRange->positionLogical().x(), 0.2); |
| 175 | QCOMPARE(referenceRange->positionLogical().y(), 0.5); |
| 176 | QCOMPARE(referenceRange->positionLogicalStart().x(), 0.1); |
| 177 | QCOMPARE(referenceRange->positionLogicalEnd().x(), 0.3); |
| 178 | |
| 179 | CHECK_REFERENCERANGE_RECT(referenceRange, 0.1, 1., 0.3, 0.); |
| 180 | } |
| 181 | |
| 182 | void WorksheetElementTest::referenceRangeYMouseMove() { |
| 183 | SETUP_PROJECT |
nothing calls this directly
no test coverage detected