21 #ifndef WORKSPACEPANEL_H
22 #define WORKSPACEPANEL_H
27 #include <tulip/tulipconf.h>
29 class QDragEnterEvent;
30 class QGraphicsObject;
31 class QPropertyAnimation;
32 class QGraphicsProxyWidget;
33 class QGraphicsRectItem;
44 class GraphHierarchiesModel;
46 class TLP_QT_SCOPE WorkspacePanel :
public QFrame {
49 Ui::WorkspacePanel* _ui;
52 QMap<QAction*, QWidget*> _actionTriggers;
53 QGraphicsRectItem* _overlayRect;
55 QGraphicsProxyWidget* _viewConfigurationWidgets;
56 bool _viewConfigurationExpanded;
57 QGraphicsProxyWidget* _currentInteractorConfigurationItem;
59 QPointF configurationTabPosition(
bool expanded)
const;
60 void setConfigurationTabExpanded(
bool expanded,
bool animate=
true);
63 explicit WorkspacePanel(
tlp::View* view, QWidget* parent=NULL);
64 virtual ~WorkspacePanel();
66 bool eventFilter(QObject *, QEvent *);
69 QString viewName()
const;
74 void setGraphsModel(tlp::GraphHierarchiesModel*);
76 void setOverlayMode(
bool);
77 void setHighlightMode(
bool);
78 bool isGraphSynchronized()
const;
82 void swapWithPanels(WorkspacePanel* panel);
83 void changeGraphSynchronization(
bool);
86 void hideConfigurationTab();
87 void interactorActionTriggered();
89 void graphComboIndexChanged();
90 void setCurrentInteractorConfigurationVisible(
bool);
93 void scrollInteractorsRight();
94 void scrollInteractorsLeft();
95 void resetInteractorsScrollButtonsVisibility();
96 void refreshInteractorsToolbar();
97 void toggleSynchronization(
bool);
101 void resizeEvent(QResizeEvent *);
103 void dragEnterEvent(QDragEnterEvent *);
104 void dropEvent(QDropEvent *);
105 void dragLeaveEvent(QDragLeaveEvent *);
107 bool handleDragEnterEvent(QEvent* e,
const QMimeData* mimedata);
108 bool handleDropEvent(
const QMimeData* mimedata);
110 void showEvent(QShowEvent *event);
116 #endif // WORKSPACEPANEL_H
Interactor provides a way to handle user inputs over a view. Basically, The interactor class is an ov...
View plugins provide a way to dynamically add to a Tulip plateform various ways to visualize a graph...