##// END OF EJS Templates
Handles rendering properties for spectrograms...
Handles rendering properties for spectrograms Spectrogram's colormap uses gradient and is associated to the color scale of the plot

File last commit:

r844:90e991aec5fa
r921:76b9deb45018
Show More
VisualizationDragWidget.cpp
53 lines | 1.3 KiB | text/x-c | CppLexer
/ gui / src / Visualization / VisualizationDragWidget.cpp
New visualization classes for the drag&drop
r838 #include "Visualization/VisualizationDragWidget.h"
#include "Visualization/VisualizationDragDropContainer.h"
#include <QApplication>
Format changes
r844 #include <QMouseEvent>
New visualization classes for the drag&drop
r838
struct VisualizationDragWidget::VisualizationDragWidgetPrivate {
Format changes
r844 QPoint m_DragStartPosition;
bool m_DragStartPositionValid = false;
New visualization classes for the drag&drop
r838
Format changes
r844 explicit VisualizationDragWidgetPrivate() {}
New visualization classes for the drag&drop
r838 };
Format changes
r844 VisualizationDragWidget::VisualizationDragWidget(QWidget *parent)
: QWidget{parent}, impl{spimpl::make_unique_impl<VisualizationDragWidgetPrivate>()}
New visualization classes for the drag&drop
r838 {
}
void VisualizationDragWidget::mousePressEvent(QMouseEvent *event)
{
Format changes
r844 if (event->button() == Qt::LeftButton) {
impl->m_DragStartPosition = event->pos();
}
New visualization classes for the drag&drop
r838
Format changes
r844 impl->m_DragStartPositionValid = isDragAllowed();
New visualization classes for the drag&drop
r838
QWidget::mousePressEvent(event);
}
void VisualizationDragWidget::mouseMoveEvent(QMouseEvent *event)
{
Format changes
r844 if (!impl->m_DragStartPositionValid || !isDragAllowed()) {
New visualization classes for the drag&drop
r838 return;
Format changes
r844 }
New visualization classes for the drag&drop
r838
Format changes
r844 if (!(event->buttons() & Qt::LeftButton)) {
New visualization classes for the drag&drop
r838 return;
Format changes
r844 }
New visualization classes for the drag&drop
r838
Format changes
r844 if (!event->modifiers().testFlag(Qt::AltModifier)) {
New visualization classes for the drag&drop
r838 return;
Format changes
r844 }
New visualization classes for the drag&drop
r838
Format changes
r844 if ((event->pos() - impl->m_DragStartPosition).manhattanLength()
< QApplication::startDragDistance()) {
New visualization classes for the drag&drop
r838 return;
Format changes
r844 }
New visualization classes for the drag&drop
r838
Format changes
r844 emit dragDetected(this, impl->m_DragStartPosition);
New visualization classes for the drag&drop
r838
QWidget::mouseMoveEvent(event);
}