##// END OF EJS Templates
Merge branch 'feature/DragAndDrop' into develop
Merge branch 'feature/DragAndDrop' into develop

File last commit:

r887:f5851ce3ff09
r888:7e81b9ccb6b1 merge
Show More
VisualizationDragDropContainer.h
57 lines | 1.8 KiB | text/x-c | CLexer
/ gui / include / Visualization / VisualizationDragDropContainer.h
Fixes for review
r849 #ifndef SCIQLOP_VISUALIZATIONDRAGDROPCONTAINER_H
#define SCIQLOP_VISUALIZATIONDRAGDROPCONTAINER_H
New visualization classes for the drag&drop
r841
#include <Common/spimpl.h>
Fix some glitches which occurred when dragging in the visualization something from the sides.
r886 #include <QFrame>
drop of variables in the visualization
r852 #include <QLoggingCategory>
Format changes
r847 #include <QMimeData>
#include <QVBoxLayout>
New visualization classes for the drag&drop
r841
drop of variables in the visualization
r852 #include <functional>
Add an empty area at the bottom of the tab where a new zone can be created from a drop. Differentiate graph and zone placeHolders.
r887 #include <DragDropHelper.h>
drop of variables in the visualization
r852 Q_DECLARE_LOGGING_CATEGORY(LOG_VisualizationDragDropContainer)
New visualization classes for the drag&drop
r841 class VisualizationDragWidget;
Fix some glitches which occurred when dragging in the visualization something from the sides.
r886 class VisualizationDragDropContainer : public QFrame {
New visualization classes for the drag&drop
r841 Q_OBJECT
signals:
drop of variable inside an existing graph
r881 void dropOccuredInContainer(int dropIndex, const QMimeData *mimeData);
void dropOccuredOnWidget(VisualizationDragWidget *dragWidget, const QMimeData *mimeData);
New visualization classes for the drag&drop
r841
public:
Drag of the time widget on a graph
r885 enum class DropBehavior { Inserted, Merged, InsertedAndMerged };
drop of variables in the visualization
r852 using AcceptMimeDataFunction = std::function<bool(const QMimeData *mimeData)>;
Format changes
r847 VisualizationDragDropContainer(QWidget *parent = nullptr);
New visualization classes for the drag&drop
r841
Format changes
r847 void addDragWidget(VisualizationDragWidget *dragWidget);
void insertDragWidget(int index, VisualizationDragWidget *dragWidget);
New visualization classes for the drag&drop
r841
Drag of the time widget on a graph
r885 void addAcceptedMimeType(const QString &mimeType, DropBehavior behavior);
New visualization classes for the drag&drop
r841
int countDragWidget() const;
drop of variables in the visualization
r852 void setAcceptMimeDataFunction(AcceptMimeDataFunction fun);
Add an empty area at the bottom of the tab where a new zone can be created from a drop. Differentiate graph and zone placeHolders.
r887 void setPlaceHolderType(DragDropHelper::PlaceHolderType type,
const QString &placeHolderText = QString());
New visualization classes for the drag&drop
r841 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
r847 void startDrag(VisualizationDragWidget *dragWidget, const QPoint &dragPosition);
New visualization classes for the drag&drop
r841 };
Fixes for review
r849 #endif // SCIQLOP_VISUALIZATIONDRAGDROPCONTAINER_H