Go to the documentation of this file.
5 #ifndef QT_GLWIDGETUI_H
6 #define QT_GLWIDGETUI_H
10 #include <QApplication>
24 setlocale(LC_NUMERIC,
"C");
26 setFocusPolicy(Qt::WheelFocus);
39 void keyPressEvent(QKeyEvent *event)
42 Qt::KeyboardModifier ctrl = Qt::ControlModifier;
44 Qt::KeyboardModifier ctrl = Qt::MetaModifier;
47 if (event->key() == Qt::Key_Escape)
49 else if (event->key()==Qt::Key_Space)
51 else if (event->modifiers() & ctrl)
52 if (event->key()==Qt::Key_R)
58 else if (event->key()==Qt::Key_Q)
61 lgl_Qt_GLWidget::keyPressEvent(event);
63 lgl_Qt_GLWidget::keyPressEvent(event);
68 void keyReleaseEvent(QKeyEvent *event)
70 if (event->key() == Qt::Key_Back)
73 lgl_Qt_GLWidget::keyReleaseEvent(event);
78 void mousePressEvent(QMouseEvent *event)
80 if (event->buttons() & Qt::LeftButton)
87 double x = (
event->x()+0.5)/width();
88 double y = (
event->y()+0.5)/height();
95 lastPos_ =
event->pos();
101 void mouseReleaseEvent(QMouseEvent *event)
103 if (!(event->buttons() & Qt::LeftButton))
118 void mouseMoveEvent(QMouseEvent *event)
122 double dx = (double)(event->x()-lastPos_.x())/width();
123 double dy = (double)(event->y()-lastPos_.y())/height();
130 lastPos_ =
event->pos();
131 lastDelta_ =
vec2(dx, dy);
137 void mouseDoubleClickEvent(QMouseEvent *event)
139 if (event->buttons() & Qt::LeftButton)
141 double x = (
event->x()+0.5)/width();
142 double y = (
event->y()+0.5)/height();
151 void wheelEvent(QWheelEvent *event)
153 #if QT_VERSION < QT_VERSION_CHECK(5, 0, 0)
154 double numDegrees =
event->delta()/16.0;
156 if (event->orientation() == Qt::Vertical)
158 double numDegrees =
event->angleDelta().y()/16.0;
185 return(spin_.
norm() > 0);
double norm() const
get squared vector length
Definition: glslmath.h:136
void lglResetManip()
reset the manipulator matrix
Definition: glvertex_api.h:320
void lglManip(bool on=true)
enable or disable the manipulator matrix
Definition: glvertex_api.h:300
2D double vector
Definition: glslmath.h:108
double length() const
get vector length
Definition: glslmath.h:133