Loading...
Searching...
No Matches
pappso::BasePlotContext Class Reference

`#include <baseplotcontext.h>`

Inheritance diagram for pappso::BasePlotContext:

## Public Member Functions

Q_INVOKABLE | BasePlotContext (QObject *parent=nullptr)
virtual | ~BasePlotContext ()
Q_INVOKABLE BasePlotContext * | clone (QObject *parent=nullptr)
Q_INVOKABLE void | initialize (const BasePlotContext &other)
| BasePlotContext (const BasePlotContext &other)=delete
BasePlotContext & | operator= (const BasePlotContext &other)=delete
void | updateIntegrationScope ()
void | updateIntegrationScopeRect ()
void | updateIntegrationScopeRhomb ()
void | updateIntegrationScopeRhombHorizontal ()
void | updateIntegrationScopeRhombVertical ()
DragDirections | recordDragDirections ()
Q_INVOKABLE QString | toString () const
Q_INVOKABLE QString | dragDirectionsToString () const

## Static Public Member Functions

static void | registerJsConstructor (QJSEngine *engine)

## Public Attributes

Enums::DataKind | m_dataKind = Enums::DataKind::unset
bool | m_isMouseDragging = false
bool | m_wasMouseDragging = false
bool | m_isKeyBoardDragging = false
bool | m_isLeftPseudoButtonKeyPressed = false
bool | m_isRightPseudoButtonKeyPressed = false
bool | m_wasKeyBoardDragging = false
QPointF | m_startDragPoint
QPointF | m_currentDragPoint
QPointF | m_lastCursorHoveredPoint
DragDirections | m_dragDirections = DragDirections::NOT_SET
IntegrationScopeBaseCstSPtr | msp_integrationScope = nullptr
SelectionPolygon | m_selectionPolygon
double | m_integrationScopeRhombWidth = 0
double | m_integrationScopeRhombHeight = 0
QCPRange | m_xRange
QCPRange | m_yRange
bool | m_wasClickOnXAxis = false
bool | m_wasClickOnYAxis = false
bool | m_isMeasuringDistance = false
double | m_xRegionRangeStart = std::numeric_limits<double>::min()
double | m_xRegionRangeStop = std::numeric_limits<double>::min()
double | m_yRegionRangeStart = std::numeric_limits<double>::min()
double | m_yRegionRangeStop = std::numeric_limits<double>::min()
double | m_xDelta = 0
double | m_yDelta = 0
int | m_pressedKeyCode
QSet< int > | m_pressedKeyCodes
QString | m_pressedKeyText
int | m_releasedKeyCode
QSet< int > | m_releasedKeyCodes
QString | m_releasedKeyText
Qt::KeyboardModifiers | m_keyboardModifiers
Qt::MouseButtons | m_lastPressedMouseButton
Qt::MouseButtons | m_lastReleasedMouseButton
Qt::MouseButtons | m_pressedMouseButtons
Qt::MouseButtons | m_mouseButtonsAtMousePress
Qt::MouseButtons | m_mouseButtonsAtMouseRelease

## Properties

bool | isMouseDragging
bool | wasMouseDragging
bool | isKeyBoardDragging
bool | isLeftPseudoButtonKeyPressed
bool | isRightPseudoButtonKeyPressed
bool | wasKeyBoardDragging
QPointF | startDragPoint
QPointF | currentDragPoint
QPointF | lastCursorHoveredPoint
DragDirections | dragDirections
double | xRegionRangeStart
double | xRegionRangeStop
double | yRegionRangeStart
double | yRegionRangeStop
double | xDelta
double | yDelta
int | pressedKeyCode
QString | pressedKeyText
int | releasedKeyCode
QString | releasedKeyText
Qt::KeyboardModifiers | keyboardModifiers
Qt::MouseButtons | lastPressedMouseButton
Qt::MouseButtons | lastReleasedMouseButton
Qt::MouseButtons | pressedMouseButtons
Qt::MouseButtons | mouseButtonsAtMousePress
Qt::MouseButtons | mouseButtonsAtMouseRelease

## Detailed Description

Definition at line 50 of file baseplotcontext.h.

## Constructor & Destructor Documentation

## BasePlotContext() [1/2]

pappso::BasePlotContext::BasePlotContext | ( | QObject * | parent = nullptr | ) |

explicit

Definition at line 38 of file baseplotcontext.cpp.

: QObject(parent)
{
// So we know it is never nullptr.
msp_integrationScope = std::make_shared<IntegrationScopeBase>();
}
pappso::BasePlotContext::msp_integrationScope
IntegrationScopeBaseCstSPtr msp_integrationScope
Definition baseplotcontext.h:107

References msp_integrationScope.

Referenced by BasePlotContext(), pappso::MassSpecTracePlotContext::MassSpecTracePlotContext(), clone(), initialize(), pappso::MassSpecTracePlotContext::initialize(), operator=(), and pappso::MassSpecTracePlotContext::operator=().

## ~BasePlotContext()

pappso::BasePlotContext::~BasePlotContext | ( |  | ) |

virtual

Definition at line 114 of file baseplotcontext.cpp.

{
}

## BasePlotContext() [2/2]

pappso::BasePlotContext::BasePlotContext | ( | const BasePlotContext & | other | ) |

delete

References BasePlotContext().

## Member Function Documentation

## clone()

BasePlotContext * pappso::BasePlotContext::clone | ( | QObject * | parent = nullptr | ) |

Definition at line 119 of file baseplotcontext.cpp.

{
BasePlotContext *copy_p = new BasePlotContext(parent);
// copy_p->m_dataKind = m_dataKind;
copy_p->m_isMouseDragging = m_isMouseDragging;
copy_p->m_wasMouseDragging = m_wasMouseDragging;
copy_p->m_dragDirections = m_dragDirections;
copy_p->m_isKeyBoardDragging = m_isKeyBoardDragging;
copy_p->m_isLeftPseudoButtonKeyPressed = m_isLeftPseudoButtonKeyPressed;
copy_p->m_isRightPseudoButtonKeyPressed = m_isRightPseudoButtonKeyPressed;
copy_p->m_wasKeyBoardDragging = m_wasKeyBoardDragging;
copy_p->m_startDragPoint = m_startDragPoint;
copy_p->m_currentDragPoint = m_currentDragPoint;
copy_p->m_lastCursorHoveredPoint = m_lastCursorHoveredPoint;
copy_p->m_selectionPolygon = m_selectionPolygon;
copy_p->msp_integrationScope = msp_integrationScope;
copy_p->m_integrationScopeRhombWidth = m_integrationScopeRhombWidth;
copy_p->m_integrationScopeRhombHeight = m_integrationScopeRhombHeight;
// The effective range of the axes.
copy_p->m_xRange = m_xRange;
copy_p->m_yRange = m_yRange;
// Tell if the mouse move was started onto either axis, because that will
// condition if some calculations needs to be performed or not (for example,
// if the mouse cursor motion was started on an axis, there is no point to
// perform deconvolutions).
copy_p->m_wasClickOnXAxis = m_wasClickOnXAxis;
copy_p->m_wasClickOnYAxis = m_wasClickOnYAxis;
copy_p->m_isMeasuringDistance = m_isMeasuringDistance;
// The user-selected region over the plot.
// Note that we cannot use QCPRange structures because these are normalized by
// QCustomPlot in such a manner that lower is actually < upper. But we need
// for a number of our calculations (specifically for the deconvolutions) to
// actually have the lower value be start drag point.x even if the drag
// direction was from right to left.
copy_p->m_xRegionRangeStart = m_xRegionRangeStart;
copy_p->m_xRegionRangeStop = m_xRegionRangeStop;
copy_p->m_yRegionRangeStart = m_yRegionRangeStart;
copy_p->m_yRegionRangeStop = m_yRegionRangeStop;
copy_p->m_xDelta = m_xDelta;
copy_p->m_yDelta = m_yDelta;
copy_p->m_pressedKeyCode = m_pressedKeyCode;
copy_p->m_pressedKeyCodes = m_pressedKeyCodes;
copy_p->m_pressedKeyText = m_pressedKeyText;
copy_p->m_releasedKeyCode = m_releasedKeyCode;
copy_p->m_releasedKeyCodes = m_releasedKeyCodes;
copy_p->m_releasedKeyText = m_releasedKeyText;
copy_p->m_keyboardModifiers = m_keyboardModifiers;
copy_p->m_lastPressedMouseButton = m_lastPressedMouseButton;
copy_p->m_lastReleasedMouseButton = m_lastReleasedMouseButton;
copy_p->m_pressedMouseButtons = m_pressedMouseButtons;
copy_p->m_mouseButtonsAtMousePress = m_mouseButtonsAtMousePress;
copy_p->m_mouseButtonsAtMouseRelease = m_mouseButtonsAtMouseRelease;
return copy_p;
}
pappso::BasePlotContext::m_xRegionRangeStart
double m_xRegionRangeStart
Definition baseplotcontext.h:131
pappso::BasePlotContext::m_startDragPoint
QPointF m_startDragPoint
Definition baseplotcontext.h:102
pappso::BasePlotContext::m_xDelta
double m_xDelta
Definition baseplotcontext.h:137
pappso::BasePlotContext::m_mouseButtonsAtMousePress
Qt::MouseButtons m_mouseButtonsAtMousePress
Definition baseplotcontext.h:154
pappso::BasePlotContext::m_selectionPolygon
SelectionPolygon m_selectionPolygon
Definition baseplotcontext.h:108
pappso::BasePlotContext::BasePlotContext
Q_INVOKABLE BasePlotContext(QObject *parent=nullptr)
Definition baseplotcontext.cpp:38
pappso::BasePlotContext::m_yRegionRangeStop
double m_yRegionRangeStop
Definition baseplotcontext.h:135
pappso::BasePlotContext::m_wasClickOnXAxis
bool m_wasClickOnXAxis
Definition baseplotcontext.h:120
pappso::BasePlotContext::m_keyboardModifiers
Qt::KeyboardModifiers m_keyboardModifiers
Definition baseplotcontext.h:147
pappso::BasePlotContext::m_pressedKeyCode
int m_pressedKeyCode
Definition baseplotcontext.h:140
pappso::BasePlotContext::m_xRegionRangeStop
double m_xRegionRangeStop
Definition baseplotcontext.h:132
pappso::BasePlotContext::m_lastPressedMouseButton
Qt::MouseButtons m_lastPressedMouseButton
Definition baseplotcontext.h:149
pappso::BasePlotContext::m_releasedKeyCodes
QSet< int > m_releasedKeyCodes
Definition baseplotcontext.h:144
pappso::BasePlotContext::m_isMouseDragging
bool m_isMouseDragging
Definition baseplotcontext.h:94
pappso::BasePlotContext::m_xRange
QCPRange m_xRange
Definition baseplotcontext.h:113
pappso::BasePlotContext::m_isMeasuringDistance
bool m_isMeasuringDistance
Definition baseplotcontext.h:123
pappso::BasePlotContext::m_dragDirections
DragDirections m_dragDirections
Definition baseplotcontext.h:105
pappso::BasePlotContext::m_integrationScopeRhombHeight
double m_integrationScopeRhombHeight
Definition baseplotcontext.h:110
pappso::BasePlotContext::m_lastCursorHoveredPoint
QPointF m_lastCursorHoveredPoint
Definition baseplotcontext.h:104
pappso::BasePlotContext::m_currentDragPoint
QPointF m_currentDragPoint
Definition baseplotcontext.h:103
pappso::BasePlotContext::m_releasedKeyText
QString m_releasedKeyText
Definition baseplotcontext.h:145
pappso::BasePlotContext::m_yDelta
double m_yDelta
Definition baseplotcontext.h:138
pappso::BasePlotContext::m_pressedKeyCodes
QSet< int > m_pressedKeyCodes
Definition baseplotcontext.h:141
pappso::BasePlotContext::m_yRegionRangeStart
double m_yRegionRangeStart
Definition baseplotcontext.h:134
pappso::BasePlotContext::m_isRightPseudoButtonKeyPressed
bool m_isRightPseudoButtonKeyPressed
Definition baseplotcontext.h:99
pappso::BasePlotContext::m_pressedMouseButtons
Qt::MouseButtons m_pressedMouseButtons
Definition baseplotcontext.h:152
pappso::BasePlotContext::m_yRange
QCPRange m_yRange
Definition baseplotcontext.h:114
pappso::BasePlotContext::m_mouseButtonsAtMouseRelease
Qt::MouseButtons m_mouseButtonsAtMouseRelease
Definition baseplotcontext.h:155
pappso::BasePlotContext::m_releasedKeyCode
int m_releasedKeyCode
Definition baseplotcontext.h:143
pappso::BasePlotContext::m_isLeftPseudoButtonKeyPressed
bool m_isLeftPseudoButtonKeyPressed
Definition baseplotcontext.h:98
pappso::BasePlotContext::m_integrationScopeRhombWidth
double m_integrationScopeRhombWidth
Definition baseplotcontext.h:109
pappso::BasePlotContext::m_lastReleasedMouseButton
Qt::MouseButtons m_lastReleasedMouseButton
Definition baseplotcontext.h:150
pappso::BasePlotContext::m_wasKeyBoardDragging
bool m_wasKeyBoardDragging
Definition baseplotcontext.h:100
pappso::BasePlotContext::m_wasMouseDragging
bool m_wasMouseDragging
Definition baseplotcontext.h:95
pappso::BasePlotContext::m_pressedKeyText
QString m_pressedKeyText
Definition baseplotcontext.h:142
pappso::BasePlotContext::m_wasClickOnYAxis
bool m_wasClickOnYAxis
Definition baseplotcontext.h:121
pappso::BasePlotContext::m_isKeyBoardDragging
bool m_isKeyBoardDragging
Definition baseplotcontext.h:97

References BasePlotContext(), m_currentDragPoint, m_dragDirections, m_integrationScopeRhombHeight, m_integrationScopeRhombWidth, m_isKeyBoardDragging, m_isLeftPseudoButtonKeyPressed, m_isMeasuringDistance, m_isMouseDragging, m_isRightPseudoButtonKeyPressed, m_keyboardModifiers, m_lastCursorHoveredPoint, m_lastPressedMouseButton, m_lastReleasedMouseButton, m_mouseButtonsAtMousePress, m_mouseButtonsAtMouseRelease, m_pressedKeyCode, m_pressedKeyCodes, m_pressedKeyText, m_pressedMouseButtons, m_releasedKeyCode, m_releasedKeyCodes, m_releasedKeyText, m_selectionPolygon, m_startDragPoint, m_wasClickOnXAxis, m_wasClickOnYAxis, m_wasKeyBoardDragging, m_wasMouseDragging, m_xDelta, m_xRange, m_xRegionRangeStart, m_xRegionRangeStop, m_yDelta, m_yRange, m_yRegionRangeStart, m_yRegionRangeStop, and msp_integrationScope.

## dragDirectionsToString()

QString pappso::BasePlotContext::dragDirectionsToString | ( |  | ) | const

Definition at line 1008 of file baseplotcontext.cpp.

{
QString text;
// Document how the mouse cursor is being dragged.
if(m_isMouseDragging)
{
if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::LEFT_TO_RIGHT))
text += " -- dragging from left to right";
else if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::RIGHT_TO_LEFT))
text += " -- dragging from right to left";
if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::TOP_TO_BOTTOM))
text += " -- dragging from top to bottom";
if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::BOTTOM_TO_TOP))
text += " -- dragging from bottom to top";
}
return text;
}
pappso::DragDirections::RIGHT_TO_LEFT
@ RIGHT_TO_LEFT
Definition baseplotcontext.h:34
pappso::DragDirections::LEFT_TO_RIGHT
@ LEFT_TO_RIGHT
Definition baseplotcontext.h:33
pappso::DragDirections::BOTTOM_TO_TOP
@ BOTTOM_TO_TOP
Definition baseplotcontext.h:36
pappso::DragDirections::TOP_TO_BOTTOM
@ TOP_TO_BOTTOM
Definition baseplotcontext.h:35

References pappso::BOTTOM_TO_TOP, pappso::LEFT_TO_RIGHT, m_dragDirections, m_isMouseDragging, pappso::RIGHT_TO_LEFT, and pappso::TOP_TO_BOTTOM.

Referenced by toString().

## initialize()

void pappso::BasePlotContext::initialize | ( | const BasePlotContext & | other | ) |

Definition at line 192 of file baseplotcontext.cpp.

{
m_dataKind = other.m_dataKind;
m_isMouseDragging = other.m_isMouseDragging;
m_wasMouseDragging = other.m_wasMouseDragging;
m_dragDirections = other.m_dragDirections;
m_isKeyBoardDragging = other.m_isKeyBoardDragging;
m_isLeftPseudoButtonKeyPressed = other.m_isLeftPseudoButtonKeyPressed;
m_isRightPseudoButtonKeyPressed = other.m_isRightPseudoButtonKeyPressed;
m_wasKeyBoardDragging = other.m_wasKeyBoardDragging;
m_startDragPoint = other.m_startDragPoint;
m_currentDragPoint = other.m_currentDragPoint;
m_lastCursorHoveredPoint = other.m_lastCursorHoveredPoint;
m_selectionPolygon = other.m_selectionPolygon;
msp_integrationScope = other.msp_integrationScope;
m_integrationScopeRhombWidth = other.m_integrationScopeRhombWidth;
m_integrationScopeRhombHeight = other.m_integrationScopeRhombHeight;
// The effective range of the axes.
m_xRange = other.m_xRange;
m_yRange = other.m_yRange;
// Tell if the mouse move was started onto either axis, because that will
// condition if some calculations needs to be performed or not (for example,
// if the mouse cursor motion was started on an axis, there is no point to
// perform deconvolutions).
m_wasClickOnXAxis = other.m_wasClickOnXAxis;
m_wasClickOnYAxis = other.m_wasClickOnYAxis;
m_isMeasuringDistance = other.m_isMeasuringDistance;
// The user-selected region over the plot.
// Note that we cannot use QCPRange structures because these are normalized by
// QCustomPlot in such a manner that lower is actually < upper. But we need
// for a number of our calculations (specifically for the deconvolutions) to
// actually have the lower value be start drag point.x even if the drag
// direction was from right to left.
m_xRegionRangeStart = other.m_xRegionRangeStart;
m_xRegionRangeStop = other.m_xRegionRangeStop;
m_yRegionRangeStart = other.m_yRegionRangeStart;
m_yRegionRangeStop = other.m_yRegionRangeStop;
m_xDelta = other.m_xDelta;
m_yDelta = other.m_yDelta;
m_pressedKeyCode = other.m_pressedKeyCode;
m_pressedKeyCodes = other.m_pressedKeyCodes;
m_pressedKeyText = other.m_pressedKeyText;
m_releasedKeyCode = other.m_releasedKeyCode;
m_releasedKeyCodes = other.m_releasedKeyCodes;
m_releasedKeyText = other.m_releasedKeyText;
m_keyboardModifiers = other.m_keyboardModifiers;
m_lastPressedMouseButton = other.m_lastPressedMouseButton;
m_lastReleasedMouseButton = other.m_lastReleasedMouseButton;
m_pressedMouseButtons = other.m_pressedMouseButtons;
m_mouseButtonsAtMousePress = other.m_mouseButtonsAtMousePress;
m_mouseButtonsAtMouseRelease = other.m_mouseButtonsAtMouseRelease;
}
pappso::BasePlotContext::m_dataKind
Enums::DataKind m_dataKind
Definition baseplotcontext.h:92

References BasePlotContext(), m_currentDragPoint, m_dataKind, m_dragDirections, m_integrationScopeRhombHeight, m_integrationScopeRhombWidth, m_isKeyBoardDragging, m_isLeftPseudoButtonKeyPressed, m_isMeasuringDistance, m_isMouseDragging, m_isRightPseudoButtonKeyPressed, m_keyboardModifiers, m_lastCursorHoveredPoint, m_lastPressedMouseButton, m_lastReleasedMouseButton, m_mouseButtonsAtMousePress, m_mouseButtonsAtMouseRelease, m_pressedKeyCode, m_pressedKeyCodes, m_pressedKeyText, m_pressedMouseButtons, m_releasedKeyCode, m_releasedKeyCodes, m_releasedKeyText, m_selectionPolygon, m_startDragPoint, m_wasClickOnXAxis, m_wasClickOnYAxis, m_wasKeyBoardDragging, m_wasMouseDragging, m_xDelta, m_xRange, m_xRegionRangeStart, m_xRegionRangeStop, m_yDelta, m_yRange, m_yRegionRangeStart, m_yRegionRangeStop, and msp_integrationScope.

Referenced by pappso::MassSpecTracePlotContext::initialize(), and pappso::MassSpecTracePlotContext::initialize().

## operator=()

BasePlotContext & pappso::BasePlotContext::operator= | ( | const BasePlotContext & | other | ) |

delete

References BasePlotContext().

## recordDragDirections()

DragDirections pappso::BasePlotContext::recordDragDirections | ( |  | ) |

Definition at line 864 of file baseplotcontext.cpp.

{
int drag_directions = static_cast<int>(DragDirections::NOT_SET);
if(m_currentDragPoint.x() > m_startDragPoint.x())
drag_directions |= static_cast<int>(DragDirections::LEFT_TO_RIGHT);
else
drag_directions |= static_cast<int>(DragDirections::RIGHT_TO_LEFT);
if(m_currentDragPoint.y() > m_startDragPoint.y())
drag_directions |= static_cast<int>(DragDirections::BOTTOM_TO_TOP);
else
drag_directions |= static_cast<int>(DragDirections::TOP_TO_BOTTOM);
// qDebug() << "DragDirections:" << drag_directions;
m_dragDirections = static_cast<DragDirections>(drag_directions);
return static_cast<DragDirections>(drag_directions);
}
pappso::DragDirections
DragDirections
Definition baseplotcontext.h:31
pappso::DragDirections::NOT_SET
@ NOT_SET
Definition baseplotcontext.h:32

References pappso::BOTTOM_TO_TOP, pappso::LEFT_TO_RIGHT, m_currentDragPoint, m_dragDirections, m_startDragPoint, pappso::NOT_SET, pappso::RIGHT_TO_LEFT, and pappso::TOP_TO_BOTTOM.

## registerJsConstructor()

void pappso::BasePlotContext::registerJsConstructor | ( | QJSEngine * | engine | ) |

static

Definition at line 1033 of file baseplotcontext.cpp.

{
// qDebug() << "Now registering the JS constructor for BasePlotContext.";
if(!engine)
{
qFatal() << "Cannot register class: engine is null";
return;
}
// Register the meta object as a constructor
QJSValue jsMetaObject =
engine->newQMetaObject(&BasePlotContext::staticMetaObject);
engine->globalObject().setProperty("BasePlotContext", jsMetaObject);
QJSValue enumObject = engine->newObject();
enumObject.setProperty("NOT_SET",
static_cast<int>(pappso::DragDirections::NOT_SET));
enumObject.setProperty(
"LEFT_TO_RIGHT", static_cast<int>(pappso::DragDirections::LEFT_TO_RIGHT));
enumObject.setProperty(
"RIGHT_TO_LEFT", static_cast<int>(pappso::DragDirections::RIGHT_TO_LEFT));
enumObject.setProperty(
"TOP_TO_BOTTOM", static_cast<int>(pappso::DragDirections::TOP_TO_BOTTOM));
enumObject.setProperty(
"BOTTOM_TO_TOP", static_cast<int>(pappso::DragDirections::BOTTOM_TO_TOP));
// Make it available in the global JS scope
engine->globalObject().setProperty("DragDirections", enumObject);
}

References pappso::BOTTOM_TO_TOP, pappso::LEFT_TO_RIGHT, pappso::NOT_SET, pappso::RIGHT_TO_LEFT, and pappso::TOP_TO_BOTTOM.

## toString()

QString pappso::BasePlotContext::toString | ( |  | ) | const

Definition at line 886 of file baseplotcontext.cpp.

{
QString text("Context:");
text += QString(" data kind: %1").arg(static_cast<int>(m_dataKind));
text += QString(" -- isMouseDragging: %1 -- wasMouseDragging: %2")
.arg(m_isMouseDragging ? "true" : "false")
.arg(m_wasMouseDragging ? "true" : "false");
text += QString(" -- startDragPoint : (%1, %2)")
.arg(m_startDragPoint.x())
.arg(m_startDragPoint.y());
text += QString(" -- currentDragPoint : (%1, %2)")
.arg(m_currentDragPoint.x())
.arg(m_currentDragPoint.y());
text += QString(" -- lastCursorHoveredPoint : (%1, %2)")
.arg(m_lastCursorHoveredPoint.x())
.arg(m_lastCursorHoveredPoint.y());
text += dragDirectionsToString();
// The integration scope
text += " -- Integration scope: ";
text += msp_integrationScope->toString();
text += " -- ";
text +=
QString(" -- xRange: (%1, %2)").arg(m_xRange.lower).arg(m_xRange.upper);
text +=
QString(" -- yRange: (%1, %2)").arg(m_yRange.lower).arg(m_yRange.upper);
text += QString(" -- wasClickOnXAxis: %1")
.arg(m_wasClickOnXAxis ? "true" : "false");
text += QString(" -- wasClickOnYAxis: %1")
.arg(m_wasClickOnYAxis ? "true" : "false");
text += QString(" -- isMeasuringDistance: %1")
.arg(m_isMeasuringDistance ? "true" : "false");
text += QString(" -- xRegionRangeStart: %1 -- xRegionRangeEnd: %2")
.arg(m_xRegionRangeStart)
.arg(m_xRegionRangeStop);
text += QString(" -- yRegionRangeStart: %1 -- yRegionRangeEnd: %2")
.arg(m_yRegionRangeStart)
.arg(m_yRegionRangeStop);
text += QString(" -- xDelta: %1 -- yDelta: %2").arg(m_xDelta).arg(m_yDelta);
text += QString(" -- pressedKeyCode: %1").arg(m_pressedKeyCode);
if(m_pressedKeyCodes.size())
{
for(int key : m_pressedKeyCodes)
text += QString(" -- pressedKeyCodes key: %1").arg(key);
}
text += QString(" -- releasedKeyCode: %1").arg(m_releasedKeyCode);
if(m_releasedKeyCodes.size())
{
for(int key : m_releasedKeyCodes)
text += QString(" -- releasedKeyCodes key: %1").arg(key);
}
// Qt::NoModifier0x00000000No modifier key is pressed.
// Qt::ShiftModifier0x02000000A Shift key on the keyboard is pressed.
// Qt::ControlModifier0x04000000A Ctrl key on the keyboard is pressed.
// Qt::AltModifier0x08000000An Alt key on the keyboard is pressed.
// Qt::MetaModifier0x10000000A Meta key on the keyboard is pressed.
// Qt::KeypadModifier0x20000000A keypad button is pressed.
// Qt::GroupSwitchModifier0x40000000X11 only (unless activated on Windows by a
// command line argument).
// A Mode_switch key on the keyboard is
// pressed.
text += QString(" -- keyboardModifiers: ");
if(m_keyboardModifiers == Qt::NoModifier)
text += QString("%1 - ").arg(qtKeyboardModifierMap[Qt::NoModifier]);
if(static_cast<int>(m_keyboardModifiers) & Qt::ShiftModifier)
text += QString("%1 - ").arg(qtKeyboardModifierMap[Qt::ShiftModifier]);
if(static_cast<int>(m_keyboardModifiers) & Qt::ControlModifier)
text += QString("%1 - ").arg(qtKeyboardModifierMap[Qt::ControlModifier]);
if(static_cast<int>(m_keyboardModifiers) & Qt::AltModifier)
text += QString("%1 - ").arg(qtKeyboardModifierMap[Qt::AltModifier]);
if(static_cast<int>(m_keyboardModifiers) & Qt::MetaModifier)
text += QString("%1 - ").arg(qtKeyboardModifierMap[Qt::MetaModifier]);
if(static_cast<int>(m_keyboardModifiers) & Qt::KeypadModifier)
text += QString("%1 - ").arg(qtKeyboardModifierMap[Qt::KeypadModifier]);
if(static_cast<int>(m_keyboardModifiers) & Qt::GroupSwitchModifier)
text +=
QString("%1 - ").arg(qtKeyboardModifierMap[Qt::GroupSwitchModifier]);
text += QString(" -- lastPressedMouseButton: %1")
.arg(qtMouseButtonsMap[m_lastPressedMouseButton]);
text += QString(" -- lastReleasedMouseButton: %1")
.arg(qtMouseButtonsMap[m_lastReleasedMouseButton]);
text += QString(" -- pressedMouseButtons: %1")
.arg(qtMouseButtonsMap[m_pressedMouseButtons]);
text += QString(" -- mouseButtonsAtMousePress: %1")
.arg(qtMouseButtonsMap[m_mouseButtonsAtMousePress]);
text += QString(" -- mouseButtonsAtMouseRelease: %1")
.arg(qtMouseButtonsMap[m_mouseButtonsAtMouseRelease]);
return text;
}
pappso::BasePlotContext::dragDirectionsToString
Q_INVOKABLE QString dragDirectionsToString() const
Definition baseplotcontext.cpp:1008
pappso::qtMouseButtonsMap
std::map< Qt::MouseButtons, QString > qtMouseButtonsMap
Definition baseplotcontext.cpp:18
pappso::qtKeyboardModifierMap
std::map< Qt::KeyboardModifier, QString > qtKeyboardModifierMap
Definition baseplotcontext.cpp:29

References dragDirectionsToString(), m_currentDragPoint, m_dataKind, m_isMeasuringDistance, m_isMouseDragging, m_keyboardModifiers, m_lastCursorHoveredPoint, m_lastPressedMouseButton, m_lastReleasedMouseButton, m_mouseButtonsAtMousePress, m_mouseButtonsAtMouseRelease, m_pressedKeyCode, m_pressedKeyCodes, m_pressedMouseButtons, m_releasedKeyCode, m_releasedKeyCodes, m_startDragPoint, m_wasClickOnXAxis, m_wasClickOnYAxis, m_wasMouseDragging, m_xDelta, m_xRange, m_xRegionRangeStart, m_xRegionRangeStop, m_yDelta, m_yRange, m_yRegionRangeStart, m_yRegionRangeStop, msp_integrationScope, pappso::qtKeyboardModifierMap, and pappso::qtMouseButtonsMap.

Referenced by pappso::MassSpecTracePlotContext::toString().

## updateIntegrationScope()

void pappso::BasePlotContext::updateIntegrationScope | ( |  | ) |

Definition at line 261 of file baseplotcontext.cpp.

{
// qDebug();
// By essence, IntegrationScope is 1D scope. The point of the scope is the
// left bottom point, and then we document the width.
double x_range_start = std::min(m_currentDragPoint.x(), m_startDragPoint.x());
double x_range_end = std::max(m_currentDragPoint.x(), m_startDragPoint.x());
double y_position = m_startDragPoint.y();
QPointF point(x_range_start, y_position);
double width = x_range_end - x_range_start;
// qDebug() << "Going to create an integration scope with point:" << point
// << "and width:" << width;
msp_integrationScope = std::make_shared<IntegrationScope>(point, width);
// qDebug() << "Created integration scope:" <<
// msp_integrationScope->toString();
}

References m_currentDragPoint, m_startDragPoint, and msp_integrationScope.

## updateIntegrationScopeRect()

void pappso::BasePlotContext::updateIntegrationScopeRect | ( |  | ) |

Definition at line 284 of file baseplotcontext.cpp.

{
// qDebug();
// By essence, IntegrationScopeRect is a squared rectangle scope. The point of
// the scope is the left bottom point, and then we document the width and the
// height.
/* Like this:
*
+---------------------------+ -
| | |
| | |
| | m_height
| | |
| | |
P---------------------------+ -
|--------- m_width ---------|
*/
// We need to find the point that is actually the left bottom point.
QPointF point;
double width = 0;
double height = 0;
if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::LEFT_TO_RIGHT) &&
static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::BOTTOM_TO_TOP))
{
point.rx() = m_startDragPoint.x();
point.ry() = m_startDragPoint.y();
width = m_currentDragPoint.x() - point.rx();
height = m_currentDragPoint.y() - point.ry();
// qDebug() << "left to right - bottom to top";
}
if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::RIGHT_TO_LEFT) &&
static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::BOTTOM_TO_TOP))
{
point.rx() = m_currentDragPoint.x();
point.ry() = m_currentDragPoint.y();
width = m_startDragPoint.x() - m_currentDragPoint.x();
height = m_startDragPoint.y() - m_currentDragPoint.y();
// qDebug() << "right to left - bottom to top";
}
if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::LEFT_TO_RIGHT) &&
static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::TOP_TO_BOTTOM))
{
point.rx() = m_startDragPoint.x();
point.ry() = m_currentDragPoint.y();
width = m_currentDragPoint.x() - m_startDragPoint.x();
height = m_startDragPoint.y() - m_currentDragPoint.y();
// qDebug() << "left to right - top to bottom";
}
if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::RIGHT_TO_LEFT) &&
static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::TOP_TO_BOTTOM))
{
point.rx() = m_currentDragPoint.x();
point.ry() = m_currentDragPoint.y();
width = m_startDragPoint.x() - m_currentDragPoint.x();
height = m_startDragPoint.y() - m_currentDragPoint.y();
// qDebug() << "right to left - top to bottom";
}
// qDebug() << "The data used to update the integration scope:";
// qDebug() << "Point:" << point << "width:" << width << "height:" << height;
//
// qDebug() << "The integration scope before update:" << mpa_integrationScope;
//
// qDebug() << "Will update IntegrationScopeRect with:" << point << "width"
// << width << "height" << height;
msp_integrationScope =
std::make_shared<IntegrationScopeRect>(point, width, height);
// if(typeid(*mpa_integrationScope) == typeid(IntegrationScopeInterface))
// qDebug() << "The pointer is of type IntegrationScopeInterface";
// if(typeid(*mpa_integrationScope) == typeid(IntegrationScope))
// qDebug() << "The pointer is of type IntegrationScope";
// if(typeid(*mpa_integrationScope) == typeid(IntegrationScopeRect))
// qDebug() << "The pointer is of type IntegrationScopeRect";
// if(typeid(*mpa_integrationScope) == typeid(IntegrationScopeRhomb))
// qDebug() << "The pointer is of type IntegrationScopeRhomb";
//
// qDebug() << "The integration scope right after update:"
// << mpa_integrationScope;
//
// if(!mpa_integrationScope->getPoint(point))
// qFatal("Could not get point.");
// qDebug() << "The point:" << point;
// if(!mpa_integrationScope->getWidth(width))
// qFatal("Oh no!!!! width");
// if(!mpa_integrationScope->getWidth(height))
// qFatal("Oh no!!!! height");
}

References pappso::BOTTOM_TO_TOP, pappso::LEFT_TO_RIGHT, m_currentDragPoint, m_dragDirections, m_startDragPoint, msp_integrationScope, pappso::RIGHT_TO_LEFT, and pappso::TOP_TO_BOTTOM.

## updateIntegrationScopeRhomb()

void pappso::BasePlotContext::updateIntegrationScopeRhomb | ( |  | ) |

Definition at line 706 of file baseplotcontext.cpp.

{
// qDebug() << toString();
// By essence, IntegrationScopeRhomb is a rhomboid polygon. Just set the
// points. There are two kinds of rhomboid integration scopes: horizontal and
// vertical.
/*
+----------+
| |
| |
| |
| |
| |
| |
| |
+----------+
----width---
*/
// As visible here, the fixed size of the rhomboid (using the S key in the
// plot widget) is the *horizontal* side (that is, the rhomboid has a non-0
// width)..
// However, it might be useful to be able to draw rhomboid integration scopes
// like this, that would correspond to the rhomboid above after a transpose
// operation.
/*
+
. |
. |
. |
. +
. .
. .
. .
+ .
| | .
height | | .
| | .
+
*/
// As visible here, the fixed size of the rhomboid (using the S key in the
// plot widget) is the vertical side (that is, the rhomboid has a non-0
// height).
// The general rule is thus that when the m_integrationScopeRhombWidth is
// not-0, then the first shape is considered, while when the
// m_integrationScopeRhombHeight is non-0, then the second shape is
// considered.
// This function is called when the user has dragged the cursor (left or right
// button, not for or for integration, respectively) with the 'Alt' modifier
// key pressed, so that they want to perform a rhomboid integration scope
// calculation.
// Of course, the integration scope in the context might not be a rhomboid
// scope, because we might enter this function as a very firt switch from
// scope or scopeRect to scopeRhomb. The only indication we have to direct the
// creation of a horizontal or vertical rhomboid is the
// m_integrationScopeRhombWidth/m_integrationScopeRhombHeight recorded in the
// plot widget that owns this plot context.
// qDebug() << "In updateIntegrationScopeRhomb, m_integrationScopeRhombWidth:"
// << m_integrationScopeRhombWidth
// << "and m_integrationScopeRhombHeight:"
// << m_integrationScopeRhombHeight;
if(!m_integrationScopeRhombWidth && !m_integrationScopeRhombHeight)
qFatal(
"Both m_integrationScopeRhombWidth and m_integrationScopeRhombHeight of "
"rhomboid integration scope cannot be 0.");
if(m_integrationScopeRhombWidth != 0)
return updateIntegrationScopeRhombHorizontal();
else if(m_integrationScopeRhombHeight != 0)
return updateIntegrationScopeRhombVertical();
}
pappso::BasePlotContext::updateIntegrationScopeRhombVertical
void updateIntegrationScopeRhombVertical()
Definition baseplotcontext.cpp:547
pappso::BasePlotContext::updateIntegrationScopeRhombHorizontal
void updateIntegrationScopeRhombHorizontal()
Definition baseplotcontext.cpp:392

References m_integrationScopeRhombHeight, m_integrationScopeRhombWidth, updateIntegrationScopeRhombHorizontal(), and updateIntegrationScopeRhombVertical().

## updateIntegrationScopeRhombHorizontal()

void pappso::BasePlotContext::updateIntegrationScopeRhombHorizontal | ( |  | ) |

Definition at line 392 of file baseplotcontext.cpp.

{
// qDebug() << toString();
/*
4+----------+3
| |
| |
| |
| |
| |
| |
| |
1+----------+2
----width---
*/
// As visible here, the fixed size of the rhomboid (using the S key in the
// plot widget) is the horizontal side.
// The points are numbered in a counterclockwise manner, starting from the
// starting drag point. The width side is right of the start drag point if
// the user drags from left to right and left of the start drag point if
// the user drags from left to right. In the figure above, the user
// has dragged the mouse from point 1 and to the right and upwards.
// Thus the width side is right of point 1. Because the numbering
// is counterclockwise, that point happens to be numbered 2.
// If the user had draggged the mouse starting at point 3 and to the left
// and to the bottom, then point 3 above would be point 1, point 4
// would be point 2 because the width side is left of the start
// drag point; point 1 would be point 3 and finally the last point
// would be at point 2.
// Sanity check
if(m_integrationScopeRhombWidth == 0)
qFatal(
"The m_integrationScopeRhombWidth of the fixed rhomboid side cannot be "
"0.");
QPointF point;
std::vector<QPointF> points;
// Fill-in the points in the vector in the order they are created
// while drawing the rhomboid shape. Thus, the first point (start of the
// mouse click & drag operation is always the same.
point.rx() = m_startDragPoint.x();
point.ry() = m_startDragPoint.y();
points.push_back(point);
// qDebug() << "Start point:" << point;
if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::LEFT_TO_RIGHT) &&
static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::BOTTOM_TO_TOP))
{
// Second point.
point.rx() = m_startDragPoint.x() + m_integrationScopeRhombWidth;
point.ry() = m_startDragPoint.y();
points.push_back(point);
// qDebug() << "Second point:" << point;
// Third point.
point.rx() = m_currentDragPoint.rx() + m_integrationScopeRhombWidth;
point.ry() = m_currentDragPoint.ry();
points.push_back(point);
// qDebug() << "Third point:" << point;
// Fourth point.
point.rx() = m_currentDragPoint.rx();
point.ry() = m_currentDragPoint.ry();
points.push_back(point);
// qDebug() << "Last point:" << point;
}
if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::RIGHT_TO_LEFT) &&
static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::BOTTOM_TO_TOP))
{
// Second point.
point.rx() = m_currentDragPoint.rx();
point.ry() = m_currentDragPoint.ry();
points.push_back(point);
// qDebug() << "Second point:" << point;
// Third point.
point.rx() = m_currentDragPoint.rx() - m_integrationScopeRhombWidth;
point.ry() = m_currentDragPoint.ry();
points.push_back(point);
// qDebug() << "Third point:" << point;
// Fourth point.
point.rx() = m_startDragPoint.rx() - m_integrationScopeRhombWidth;
point.ry() = m_startDragPoint.ry();
points.push_back(point);
// qDebug() << "Last point:" << point;
}
if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::LEFT_TO_RIGHT) &&
static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::TOP_TO_BOTTOM))
{
// Second point.
point.rx() = m_currentDragPoint.rx();
point.ry() = m_currentDragPoint.ry();
points.push_back(point);
// qDebug() << "Second point:" << point;
// Third point.
point.rx() = m_currentDragPoint.rx() + m_integrationScopeRhombWidth;
point.ry() = m_currentDragPoint.ry();
points.push_back(point);
// qDebug() << "Third point:" << point;
// Fourth point.
point.rx() = m_startDragPoint.x() + m_integrationScopeRhombWidth;
point.ry() = m_startDragPoint.y();
points.push_back(point);
// qDebug() << "Last point:" << point;
}
if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::RIGHT_TO_LEFT) &&
static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::TOP_TO_BOTTOM))
{
// Second point.
point.rx() = m_startDragPoint.x() - m_integrationScopeRhombWidth;
point.ry() = m_startDragPoint.y();
points.push_back(point);
// qDebug() << "Second point:" << point;
// Third point.
point.rx() = m_currentDragPoint.rx() - m_integrationScopeRhombWidth;
point.ry() = m_currentDragPoint.ry();
points.push_back(point);
// qDebug() << "Third point:" << point;
// Fourth point.
point.rx() = m_currentDragPoint.rx();
point.ry() = m_currentDragPoint.ry();
points.push_back(point);
// qDebug() << "Last point:" << point;
}
msp_integrationScope = std::make_shared<IntegrationScopeRhomb>(points);
// qDebug() << "Created an integration scope horizontal rhomboid with"
// << points.size() << "points:" << msp_integrationScope->toString();
}

References pappso::BOTTOM_TO_TOP, pappso::LEFT_TO_RIGHT, m_currentDragPoint, m_dragDirections, m_integrationScopeRhombWidth, m_startDragPoint, msp_integrationScope, pappso::RIGHT_TO_LEFT, and pappso::TOP_TO_BOTTOM.

Referenced by updateIntegrationScopeRhomb().

## updateIntegrationScopeRhombVertical()

void pappso::BasePlotContext::updateIntegrationScopeRhombVertical | ( |  | ) |

Definition at line 547 of file baseplotcontext.cpp.

{
// qDebug() << toString();
/*
* +3
* . |
* . |
* . |
* . +2
* . .
* . .
* . .
* 4+ .
* | | .
* height | | .
* | | .
* 1+
*
*/
// As visible here, the fixed size of the rhomboid (using the S key in the
// plot widget) is the vertical side.
// The points are numbered in a counterclockwise manner, starting from the
// starting drag point. The height side is below the start drag point if
// the user drags from top to bottom and above the start drag point if
// the user drags from bottom to top. In the figure above, the user
// has dragged the mouse from point 1 and to the right and upwards.
// Thus the height side is above the point 1. Because the numbering
// is counterclockwise, that point happens to be numbered 4.
// If the user had draggged the mouse starting at point 3 and to the left
// and to the bottom, then point 3 above would be point 1, point 4
// would be ponit 2, point 1 would be point 3 and finally, because
// the dragging is from top to bottom, the last point would be at point 2
// above, because the height side of the rhomboid is below the start
// drag point.
// Sanity check
if(m_integrationScopeRhombHeight == 0)
qFatal("The height of the fixed rhomboid side cannot be 0.");
QPointF point;
std::vector<QPointF> points;
// Fill-in the points in the vector in the order they are created
// while drawing the rhomboid shape. Thus, the first point (start of the
// mouse click & drag operation is always the same, the leftmost bottom point
// of the drawing above (point 1).
point.rx() = m_startDragPoint.x();
point.ry() = m_startDragPoint.y();
points.push_back(point);
// qDebug() << "Start point:" << point;
if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::LEFT_TO_RIGHT) &&
static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::BOTTOM_TO_TOP))
{
// Second point.
point.rx() = m_currentDragPoint.rx();
point.ry() = m_currentDragPoint.ry();
points.push_back(point);
// qDebug() << "Second point:" << point;
// Third point.
point.rx() = m_currentDragPoint.rx();
point.ry() = m_currentDragPoint.ry() + m_integrationScopeRhombHeight;
points.push_back(point);
// qDebug() << "Third point:" << point;
// Fourth point.
point.rx() = m_startDragPoint.x();
point.ry() = m_startDragPoint.y() + m_integrationScopeRhombHeight;
points.push_back(point);
// qDebug() << "Last point:" << point;
}
if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::RIGHT_TO_LEFT) &&
static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::BOTTOM_TO_TOP))
{
// Second point.
point.rx() = m_startDragPoint.rx();
point.ry() = m_startDragPoint.ry() + m_integrationScopeRhombHeight;
points.push_back(point);
// qDebug() << "Second point:" << point;
// Third point.
point.rx() = m_currentDragPoint.rx();
point.ry() = m_currentDragPoint.ry() + m_integrationScopeRhombHeight;
points.push_back(point);
// qDebug() << "Third point:" << point;
// Fourth point.
point.rx() = m_currentDragPoint.x();
point.ry() = m_currentDragPoint.y();
points.push_back(point);
// qDebug() << "Last point:" << point;
}
if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::LEFT_TO_RIGHT) &&
static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::TOP_TO_BOTTOM))
{
// Second point.
point.rx() = m_startDragPoint.x();
point.ry() = m_startDragPoint.y() - m_integrationScopeRhombHeight;
points.push_back(point);
// qDebug() << "Second point:" << point;
// Third point.
point.rx() = m_currentDragPoint.rx();
point.ry() = m_currentDragPoint.ry() - m_integrationScopeRhombHeight;
points.push_back(point);
// qDebug() << "Third point:" << point;
// Fourth point.
point.rx() = m_currentDragPoint.rx();
point.ry() = m_currentDragPoint.ry();
points.push_back(point);
// qDebug() << "Last point:" << point;
}
if(static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::RIGHT_TO_LEFT) &&
static_cast<int>(m_dragDirections) &
static_cast<int>(DragDirections::TOP_TO_BOTTOM))
{
// Second point.
point.rx() = m_currentDragPoint.rx();
point.ry() = m_currentDragPoint.ry();
points.push_back(point);
// qDebug() << "Second point:" << point;
// Third point.
point.rx() = m_currentDragPoint.rx();
point.ry() = m_currentDragPoint.ry() - m_integrationScopeRhombHeight;
points.push_back(point);
// qDebug() << "Third point:" << point;
// Fourth point.
point.rx() = m_startDragPoint.rx();
point.ry() = m_startDragPoint.ry() - m_integrationScopeRhombHeight;
points.push_back(point);
// qDebug() << "Last point:" << point;
}
msp_integrationScope = std::make_shared<IntegrationScopeRhomb>(points);
// qDebug() << "Created an integration scope vertical rhomboid with"
// << points.size() << "points:" << msp_integrationScope->toString();
}

References pappso::BOTTOM_TO_TOP, pappso::LEFT_TO_RIGHT, m_currentDragPoint, m_dragDirections, m_integrationScopeRhombHeight, m_startDragPoint, msp_integrationScope, pappso::RIGHT_TO_LEFT, and pappso::TOP_TO_BOTTOM.

Referenced by updateIntegrationScopeRhomb().

## Member Data Documentation

## m_currentDragPoint

QPointF pappso::BasePlotContext::m_currentDragPoint

Definition at line 103 of file baseplotcontext.h.

Referenced by clone(), initialize(), recordDragDirections(), toString(), updateIntegrationScope(), updateIntegrationScopeRect(), updateIntegrationScopeRhombHorizontal(), and updateIntegrationScopeRhombVertical().

## m_dataKind

Enums::DataKind pappso::BasePlotContext::m_dataKind = Enums::DataKind::unset

Definition at line 92 of file baseplotcontext.h.

Referenced by initialize(), and toString().

## m_dragDirections

DragDirections pappso::BasePlotContext::m_dragDirections = DragDirections::NOT_SET

Definition at line 105 of file baseplotcontext.h.

Referenced by clone(), dragDirectionsToString(), initialize(), recordDragDirections(), updateIntegrationScopeRect(), updateIntegrationScopeRhombHorizontal(), and updateIntegrationScopeRhombVertical().

## m_integrationScopeRhombHeight

double pappso::BasePlotContext::m_integrationScopeRhombHeight = 0

Definition at line 110 of file baseplotcontext.h.

Referenced by clone(), initialize(), updateIntegrationScopeRhomb(), and updateIntegrationScopeRhombVertical().

## m_integrationScopeRhombWidth

double pappso::BasePlotContext::m_integrationScopeRhombWidth = 0

Definition at line 109 of file baseplotcontext.h.

Referenced by clone(), initialize(), updateIntegrationScopeRhomb(), and updateIntegrationScopeRhombHorizontal().

## m_isKeyBoardDragging

bool pappso::BasePlotContext::m_isKeyBoardDragging = false

Definition at line 97 of file baseplotcontext.h.

Referenced by clone(), and initialize().

## m_isLeftPseudoButtonKeyPressed

bool pappso::BasePlotContext::m_isLeftPseudoButtonKeyPressed = false

Definition at line 98 of file baseplotcontext.h.

Referenced by clone(), and initialize().

## m_isMeasuringDistance

bool pappso::BasePlotContext::m_isMeasuringDistance = false

Definition at line 123 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_isMouseDragging

bool pappso::BasePlotContext::m_isMouseDragging = false

Definition at line 94 of file baseplotcontext.h.

Referenced by clone(), dragDirectionsToString(), initialize(), and toString().

## m_isRightPseudoButtonKeyPressed

bool pappso::BasePlotContext::m_isRightPseudoButtonKeyPressed = false

Definition at line 99 of file baseplotcontext.h.

Referenced by clone(), and initialize().

## m_keyboardModifiers

Qt::KeyboardModifiers pappso::BasePlotContext::m_keyboardModifiers

Definition at line 147 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_lastCursorHoveredPoint

QPointF pappso::BasePlotContext::m_lastCursorHoveredPoint

Definition at line 104 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_lastPressedMouseButton

Qt::MouseButtons pappso::BasePlotContext::m_lastPressedMouseButton

Definition at line 149 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_lastReleasedMouseButton

Qt::MouseButtons pappso::BasePlotContext::m_lastReleasedMouseButton

Definition at line 150 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_mouseButtonsAtMousePress

Qt::MouseButtons pappso::BasePlotContext::m_mouseButtonsAtMousePress

Definition at line 154 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_mouseButtonsAtMouseRelease

Qt::MouseButtons pappso::BasePlotContext::m_mouseButtonsAtMouseRelease

Definition at line 155 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_pressedKeyCode

int pappso::BasePlotContext::m_pressedKeyCode

Definition at line 140 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_pressedKeyCodes

QSet<int> pappso::BasePlotContext::m_pressedKeyCodes

Definition at line 141 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_pressedKeyText

QString pappso::BasePlotContext::m_pressedKeyText

Definition at line 142 of file baseplotcontext.h.

Referenced by clone(), and initialize().

## m_pressedMouseButtons

Qt::MouseButtons pappso::BasePlotContext::m_pressedMouseButtons

Definition at line 152 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_releasedKeyCode

int pappso::BasePlotContext::m_releasedKeyCode

Definition at line 143 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_releasedKeyCodes

QSet<int> pappso::BasePlotContext::m_releasedKeyCodes

Definition at line 144 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_releasedKeyText

QString pappso::BasePlotContext::m_releasedKeyText

Definition at line 145 of file baseplotcontext.h.

Referenced by clone(), and initialize().

## m_selectionPolygon

SelectionPolygon pappso::BasePlotContext::m_selectionPolygon

Definition at line 108 of file baseplotcontext.h.

Referenced by clone(), and initialize().

## m_startDragPoint

QPointF pappso::BasePlotContext::m_startDragPoint

Definition at line 102 of file baseplotcontext.h.

Referenced by clone(), initialize(), recordDragDirections(), toString(), updateIntegrationScope(), updateIntegrationScopeRect(), updateIntegrationScopeRhombHorizontal(), and updateIntegrationScopeRhombVertical().

## m_wasClickOnXAxis

bool pappso::BasePlotContext::m_wasClickOnXAxis = false

Definition at line 120 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_wasClickOnYAxis

bool pappso::BasePlotContext::m_wasClickOnYAxis = false

Definition at line 121 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_wasKeyBoardDragging

bool pappso::BasePlotContext::m_wasKeyBoardDragging = false

Definition at line 100 of file baseplotcontext.h.

Referenced by clone(), and initialize().

## m_wasMouseDragging

bool pappso::BasePlotContext::m_wasMouseDragging = false

Definition at line 95 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_xDelta

double pappso::BasePlotContext::m_xDelta = 0

Definition at line 137 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_xRange

QCPRange pappso::BasePlotContext::m_xRange

Definition at line 113 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_xRegionRangeStart

double pappso::BasePlotContext::m_xRegionRangeStart = std::numeric_limits<double>::min()

Definition at line 131 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_xRegionRangeStop

double pappso::BasePlotContext::m_xRegionRangeStop = std::numeric_limits<double>::min()

Definition at line 132 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_yDelta

double pappso::BasePlotContext::m_yDelta = 0

Definition at line 138 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_yRange

QCPRange pappso::BasePlotContext::m_yRange

Definition at line 114 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_yRegionRangeStart

double pappso::BasePlotContext::m_yRegionRangeStart = std::numeric_limits<double>::min()

Definition at line 134 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## m_yRegionRangeStop

double pappso::BasePlotContext::m_yRegionRangeStop = std::numeric_limits<double>::min()

Definition at line 135 of file baseplotcontext.h.

Referenced by clone(), initialize(), and toString().

## msp_integrationScope

IntegrationScopeBaseCstSPtr pappso::BasePlotContext::msp_integrationScope = nullptr

Definition at line 107 of file baseplotcontext.h.

Referenced by BasePlotContext(), clone(), initialize(), toString(), updateIntegrationScope(), updateIntegrationScopeRect(), updateIntegrationScopeRhombHorizontal(), and updateIntegrationScopeRhombVertical().

## Property Documentation

## currentDragPoint

QPointF pappso::BasePlotContext::currentDragPoint

Definition at line 61 of file baseplotcontext.h.

## dragDirections

DragDirections pappso::BasePlotContext::dragDirections

Definition at line 63 of file baseplotcontext.h.

## isKeyBoardDragging

bool pappso::BasePlotContext::isKeyBoardDragging

Definition at line 56 of file baseplotcontext.h.

## isLeftPseudoButtonKeyPressed

bool pappso::BasePlotContext::isLeftPseudoButtonKeyPressed

Definition at line 57 of file baseplotcontext.h.

## isMouseDragging

bool pappso::BasePlotContext::isMouseDragging

Definition at line 54 of file baseplotcontext.h.

## isRightPseudoButtonKeyPressed

bool pappso::BasePlotContext::isRightPseudoButtonKeyPressed

Definition at line 58 of file baseplotcontext.h.

## keyboardModifiers

Qt::KeyboardModifiers pappso::BasePlotContext::keyboardModifiers

Definition at line 74 of file baseplotcontext.h.

## lastCursorHoveredPoint

QPointF pappso::BasePlotContext::lastCursorHoveredPoint

Definition at line 62 of file baseplotcontext.h.

## lastPressedMouseButton

Qt::MouseButtons pappso::BasePlotContext::lastPressedMouseButton

Definition at line 75 of file baseplotcontext.h.

## lastReleasedMouseButton

Qt::MouseButtons pappso::BasePlotContext::lastReleasedMouseButton

Definition at line 76 of file baseplotcontext.h.

## mouseButtonsAtMousePress

Qt::MouseButtons pappso::BasePlotContext::mouseButtonsAtMousePress

Definition at line 78 of file baseplotcontext.h.

## mouseButtonsAtMouseRelease

Qt::MouseButtons pappso::BasePlotContext::mouseButtonsAtMouseRelease

Definition at line 79 of file baseplotcontext.h.

## pressedKeyCode

int pappso::BasePlotContext::pressedKeyCode

Definition at line 70 of file baseplotcontext.h.

## pressedKeyText

QString pappso::BasePlotContext::pressedKeyText

Definition at line 71 of file baseplotcontext.h.

## pressedMouseButtons

Qt::MouseButtons pappso::BasePlotContext::pressedMouseButtons

Definition at line 77 of file baseplotcontext.h.

## releasedKeyCode

int pappso::BasePlotContext::releasedKeyCode

Definition at line 72 of file baseplotcontext.h.

## releasedKeyText

QString pappso::BasePlotContext::releasedKeyText

Definition at line 73 of file baseplotcontext.h.

## startDragPoint

QPointF pappso::BasePlotContext::startDragPoint

Definition at line 60 of file baseplotcontext.h.

## wasKeyBoardDragging

bool pappso::BasePlotContext::wasKeyBoardDragging

Definition at line 59 of file baseplotcontext.h.

## wasMouseDragging

bool pappso::BasePlotContext::wasMouseDragging

Definition at line 55 of file baseplotcontext.h.

## xDelta

double pappso::BasePlotContext::xDelta

Definition at line 68 of file baseplotcontext.h.

## xRegionRangeStart

double pappso::BasePlotContext::xRegionRangeStart

Definition at line 64 of file baseplotcontext.h.

## xRegionRangeStop

double pappso::BasePlotContext::xRegionRangeStop

Definition at line 65 of file baseplotcontext.h.

## yDelta

double pappso::BasePlotContext::yDelta

Definition at line 69 of file baseplotcontext.h.

## yRegionRangeStart

double pappso::BasePlotContext::yRegionRangeStart

Definition at line 66 of file baseplotcontext.h.

## yRegionRangeStop

double pappso::BasePlotContext::yRegionRangeStop

Definition at line 67 of file baseplotcontext.h.

The documentation for this class was generated from the following files:

- pappsomspp/gui/plotwidget/baseplotcontext.h
- pappsomspp/gui/plotwidget/baseplotcontext.cpp