13 #ifndef DtOsgAdapterQtWidget_H_
14 #define DtOsgAdapterQtWidget_H_
23 #include <QtOpenGL/QGLWidget>
24 #include <osgViewer/Viewer>
25 #include <QtCore/QTimer>
29 class GraphicsContext;
37 class DtOsgAdapterQtWidgetLogic;
50 const QGLFormat& format,
52 Qt::WindowFlags f = 0 );
58 osgViewer::GraphicsWindow* graphicsWindow();
65 osgGA::GUIEventAdapter::KeySymbol osgKeyFromQtKeyEvent( QKeyEvent* event );
69 void processKeyPressEvent( QKeyEvent* keyEvent );
73 void processKeyReleaseEvent( QKeyEvent* keyEvent );
75 virtual void mouseMoveEvent( QMouseEvent* event );
77 virtual void focusInEvent( QFocusEvent * event );
78 virtual void focusOutEvent( QFocusEvent * event );
81 static QGLFormat createFormatFromTraits(
82 const osg::GraphicsContext::Traits* contextTraits);
84 virtual QSize sizeHint();
87 virtual void slot_onRightClickTerrainMenuRequest(
double mouseX,
91 virtual void slot_onRightClickSelectionMenuRequest(
double mouseX,
99 virtual bool channelInThisWidget(
const DtChannel& channel );
101 virtual void resizeEvent( QResizeEvent* event);
102 virtual void keyPressEvent(QKeyEvent *);
103 virtual void keyReleaseEvent(QKeyEvent *);
104 virtual void mousePressEvent( QMouseEvent* event );
105 virtual void mouseReleaseEvent( QMouseEvent* event );
107 int qtButtonToOsgButton( QMouseEvent* event);
108 virtual void mouseDoubleClickEvent(QMouseEvent* event);
109 virtual void wheelEvent(QWheelEvent *);
110 virtual void closeEvent(QCloseEvent*);
111 virtual void slot_ctrlEnterPressed(
const DtChannel& channel );