23 #include <tulip/tulipconf.h>
24 #include <tulip/Observable.h>
25 #include <tulip/PluginLister.h>
27 #include <QtCore/QObject>
28 #include <QtCore/QSet>
29 #include <QtCore/QSize>
30 #include <QtCore/QPointF>
40 static const std::string VIEW_CATEGORY = QObject::trUtf8(
"Panel").toStdString();
76 QList<tlp::Interactor*> _interactors;
80 QSet<tlp::Observable*> _triggers;
100 return ":/tulip/gui/icons/32/plugin_view.png";
107 virtual QGraphicsView* graphicsView()
const=0;
114 QList<tlp::Interactor*> interactors()
const;
130 virtual QList<QWidget*> configurationWidgets()
const;
148 QSet<tlp::Observable*> triggers()
const;
154 void treatEvents(
const std::vector<Event> &events);
161 virtual QGraphicsItem* centralItem()
const;
168 virtual QPixmap snapshot(
const QSize& outputSize=QSize())
const=0;
175 void showContextMenu(
const QPoint& point,
const QPointF &scenePoint);
181 virtual void undoCallback();
188 virtual void applySettings();
197 virtual void centerView(
bool graphChanged =
false);
204 void setInteractors(
const QList<tlp::Interactor*>&);
231 virtual void draw()=0;
245 virtual void setupUi()=0;
251 virtual void treatEvent(
const Event&);
274 void clearRedrawTriggers();
279 void emitDrawNeededSignal();
299 virtual void interactorsInstalled(
const QList<tlp::Interactor*>& interactors);
319 virtual void graphDeleted(
tlp::Graph* parentGraph)=0;