##// END OF EJS Templates
Fix some glitches which occurred when dragging in the visualization something from the sides.
Fix some glitches which occurred when dragging in the visualization something from the sides.

File last commit:

r880:4ed691514436
r880:4ed691514436
Show More
VisualizationDragDropContainer.h
52 lines | 1.6 KiB | text/x-c | CLexer
/ gui / include / Visualization / VisualizationDragDropContainer.h
Fixes for review
r846 #ifndef SCIQLOP_VISUALIZATIONDRAGDROPCONTAINER_H
#define SCIQLOP_VISUALIZATIONDRAGDROPCONTAINER_H
New visualization classes for the drag&drop
r838
#include <Common/spimpl.h>
Fix some glitches which occurred when dragging in the visualization something from the sides.
r880 #include <QFrame>
drop of variables in the visualization
r850 #include <QLoggingCategory>
Format changes
r844 #include <QMimeData>
#include <QVBoxLayout>
New visualization classes for the drag&drop
r838
drop of variables in the visualization
r850 #include <functional>
Q_DECLARE_LOGGING_CATEGORY(LOG_VisualizationDragDropContainer)
New visualization classes for the drag&drop
r838 class VisualizationDragWidget;
Fix some glitches which occurred when dragging in the visualization something from the sides.
r880 class VisualizationDragDropContainer : public QFrame {
New visualization classes for the drag&drop
r838 Q_OBJECT
signals:
drop of variable inside an existing graph
r875 void dropOccuredInContainer(int dropIndex, const QMimeData *mimeData);
void dropOccuredOnWidget(VisualizationDragWidget *dragWidget, const QMimeData *mimeData);
New visualization classes for the drag&drop
r838
public:
Drag of the time widget on a graph
r879 enum class DropBehavior { Inserted, Merged, InsertedAndMerged };
drop of variables in the visualization
r850 using AcceptMimeDataFunction = std::function<bool(const QMimeData *mimeData)>;
Format changes
r844 VisualizationDragDropContainer(QWidget *parent = nullptr);
New visualization classes for the drag&drop
r838
Format changes
r844 void addDragWidget(VisualizationDragWidget *dragWidget);
void insertDragWidget(int index, VisualizationDragWidget *dragWidget);
New visualization classes for the drag&drop
r838
Drag of the time widget on a graph
r879 void addAcceptedMimeType(const QString &mimeType, DropBehavior behavior);
New visualization classes for the drag&drop
r838
int countDragWidget() const;
drop of variables in the visualization
r850 void setAcceptMimeDataFunction(AcceptMimeDataFunction fun);
New visualization classes for the drag&drop
r838 protected:
void dragEnterEvent(QDragEnterEvent *event);
void dragLeaveEvent(QDragLeaveEvent *event);
void dragMoveEvent(QDragMoveEvent *event);
void dropEvent(QDropEvent *event);
private:
class VisualizationDragDropContainerPrivate;
spimpl::unique_impl_ptr<VisualizationDragDropContainerPrivate> impl;
private slots:
Format changes
r844 void startDrag(VisualizationDragWidget *dragWidget, const QPoint &dragPosition);
New visualization classes for the drag&drop
r838 };
Fixes for review
r846 #endif // SCIQLOP_VISUALIZATIONDRAGDROPCONTAINER_H