MCPcopy Create free account
hub / github.com/LUX-Core/lux / drawDecoration

Method drawDecoration

src/qt/qcustomplot.cpp:16534–16571  ·  view source on GitHub ↗

! Draws the bracket decoration on the data points at the begin and end of each selected data segment given in \a seletion. It uses the method \ref drawBracket to actually draw the shapes. \seebaseclassmethod */

Source from the content-addressed store, hash-verified

16532 \seebaseclassmethod
16533*/
16534void QCPSelectionDecoratorBracket::drawDecoration(QCPPainter *painter, QCPDataSelection selection)
16535{
16536 if (!mPlottable || selection.isEmpty()) return;
16537
16538 if (QCPPlottableInterface1D *interface1d = mPlottable->interface1D())
16539 {
16540 Q_FOREACH (const QCPDataRange &dataRange, selection.dataRanges())
16541 {
16542 // determine position and (if tangent mode is enabled) angle of brackets:
16543 int openBracketDir = (mPlottable->keyAxis() && !mPlottable->keyAxis()->rangeReversed()) ? 1 : -1;
16544 int closeBracketDir = -openBracketDir;
16545 QPointF openBracketPos = getPixelCoordinates(interface1d, dataRange.begin());
16546 QPointF closeBracketPos = getPixelCoordinates(interface1d, dataRange.end()-1);
16547 double openBracketAngle = 0;
16548 double closeBracketAngle = 0;
16549 if (mTangentToData)
16550 {
16551 openBracketAngle = getTangentAngle(interface1d, dataRange.begin(), openBracketDir);
16552 closeBracketAngle = getTangentAngle(interface1d, dataRange.end()-1, closeBracketDir);
16553 }
16554 // draw opening bracket:
16555 QTransform oldTransform = painter->transform();
16556 painter->setPen(mBracketPen);
16557 painter->setBrush(mBracketBrush);
16558 painter->translate(openBracketPos);
16559 painter->rotate(openBracketAngle/M_PI*180.0);
16560 drawBracket(painter, openBracketDir);
16561 painter->setTransform(oldTransform);
16562 // draw closing bracket:
16563 painter->setPen(mBracketPen);
16564 painter->setBrush(mBracketBrush);
16565 painter->translate(closeBracketPos);
16566 painter->rotate(closeBracketAngle/M_PI*180.0);
16567 drawBracket(painter, closeBracketDir);
16568 painter->setTransform(oldTransform);
16569 }
16570 }
16571}
16572
16573/*! \internal
16574

Callers 1

drawMethod · 0.80

Calls 1

isEmptyMethod · 0.45

Tested by

no test coverage detected