20 #ifndef Tulip_GLMAINVIEW_H
21 #define Tulip_GLMAINVIEW_H
23 #include <tulip/ViewWidget.h>
25 class QGraphicsProxyWidget;
30 class GlOverviewGraphicsItem;
31 class SceneConfigWidget;
32 class SceneLayersConfigWidget;
66 tlp::GlOverviewGraphicsItem* _overviewItem;
67 bool isOverviewVisible;
68 QGraphicsProxyWidget* _quickAccessBarItem;
70 QAction *_centerViewAction;
71 QAction *_forceRedrawAction;
72 QAction* _advAntiAliasingAction;
76 tlp::QuickAccessBar* _quickAccessBar;
77 tlp::SceneConfigWidget* _sceneConfigurationWidget;
78 tlp::SceneLayersConfigWidget* _sceneLayersConfigurationWidget;
82 enum OverviewPosition {OVERVIEW_TOP_LEFT, OVERVIEW_TOP_RIGHT, OVERVIEW_BOTTOM_LEFT, OVERVIEW_BOTTOM_RIGHT};
87 virtual QList<QWidget*> configurationWidgets()
const;
88 bool overviewVisible()
const;
89 QPixmap snapshot(
const QSize &outputSize=QSize())
const;
91 void setOverviewPosition(
const OverviewPosition &position);
92 OverviewPosition overviewPosition()
const;
94 void setUpdateOverview(
bool updateOverview);
95 bool updateOverview()
const;
111 virtual void refresh();
116 virtual void drawOverview(
bool generatePixmap=
true);
121 virtual void centerView(
bool graphChanged =
false);
126 void setOverviewVisible(
bool);
131 void setViewOrtho(
bool);
136 void applySettings();
141 void openSnapshotDialog();
145 void setAntiAliasing(
bool);
147 void setAdvancedAntiAliasing(
bool);
151 virtual void glMainViewDrawn(
bool graphChanged);
152 virtual void sceneRectChanged(
const QRectF&);
153 void setQuickAccessBarVisible(
bool);
154 void fillContextMenu(QMenu *menu,
const QPointF &);
155 void delayedCenterView();
159 virtual void setupWidget();
160 bool quickAccessBarVisible()
const;
161 void assignNewGlMainWidget(
GlMainWidget *glMainWidget,
bool deleteOldGlMainWidget=
true);
162 bool eventFilter(QObject* obj, QEvent* event);
164 tlp::GlOverviewGraphicsItem* overviewItem()
const;
166 OverviewPosition _overviewPosition;
168 bool _updateOverview;
An abstract view that displays a GlMainWidget as its central widget.
This widget provide a simple system to visualize data/graph with OpenGL 3D engine.