22 #include <unordered_set>
29 #include <tulip/tulipconf.h>
30 #include <tulip/Edge.h>
31 #include <tulip/Observable.h>
32 #include <tulip/Plugin.h>
43 static const std::string VIEW_CATEGORY =
"Panel";
47 class ViewToolTipAndUrlManager;
98 QList<tlp::Interactor *> _interactors;
101 tlp::ViewToolTipAndUrlManager *_tturlManager;
102 bool interactorsActivated;
104 QSet<tlp::Observable *> _triggers;
105 bool _displayContextMenu;
124 return VIEW_CATEGORY;
126 std::string
icon()
const override {
127 return ":/tulip/gui/icons/32/plugin_view.png";
134 virtual QGraphicsView *graphicsView()
const = 0;
139 virtual void resetGraphicsScene() {}
144 virtual bool rebuildSceneOnShowEvent() {
170 return interactorsActivated;
180 virtual QList<QWidget *> configurationWidgets()
const;
199 QSet<tlp::Observable *> triggers()
const;
205 void treatEvents(
const std::vector<Event> &events)
override;
213 virtual QGraphicsItem *centralItem()
const;
221 virtual QPixmap snapshot(
const QSize &outputSize = QSize())
const = 0;
228 bool showContextMenu(
const QPoint &point,
const QPointF &scenePoint);
235 _displayContextMenu = show;
244 virtual void undoCallback();
252 virtual void applySettings();
263 virtual void centerView(
bool graphChanged =
false);
269 virtual void setInteractors(
const QList<tlp::Interactor *> &);
301 virtual void draw() = 0;
317 virtual void setupUi() = 0;
325 void treatEvent(
const Event &)
override;
354 void clearRedrawTriggers();
359 void emitDrawNeededSignal();
396 void interactorsChanged();
416 virtual void interactorsInstalled(
const QList<tlp::Interactor *> &interactors);
432 void toggleInteractors(
const bool activate,
const std::unordered_set<const char *> &exceptions);
446 virtual void graphDeleted(
tlp::Graph *parentGraph) = 0;
454 virtual void fillContextMenu(QMenu *,
const QPointF &);
459 void fillContextMenu(QMenu *menu,
node n);
464 void fillContextMenu(QMenu *menu,
edge e);
471 void activateTooltipAndUrlManager(QWidget *);