Robert Osfield
097aedf23c
From David Callu, warning fixes and removal of spaces at end of lines.
2013-06-28 12:00:43 +00:00
Robert Osfield
7d2f9f3a0d
From Juan Manuel Alvarez, "When handling keyboard events on osgQt, if a key is kept pressed, multiple sequences of KEYDOWN -> KEYUP events are fired.
...
This is because Qt auto repeats keyboard events, so multiple calls are made to GLWidget::keyPressEvent and GLWidget::keyReleaseEvent by Qt, and subsequently translated to OSG events.
The way to solve this is ignoring key released auto repeated events (see http://qt-project.org/doc/qt-4.8/qkeyevent.html#isAutoRepeat ), so multiple KEYDOWN events are fired, but only one KEYUP.
I attach a modified osgQt/GraphicsWindowQt.cpp with this change."
2013-06-20 10:05:56 +00:00
Robert Osfield
bdfd18dc03
From Kristofer Tingdahl, with additions from Riccardo Corsi and Robert Milharcic, support for Qt5 build
2013-06-10 14:34:25 +00:00
Robert Osfield
668d351765
Introduced new scheme for handling mouse events with osgViewer. The new scheme enables robust event handling even when using distortion correction render to texture Cameras.
2013-05-03 19:26:27 +00:00
Robert Osfield
39dcea9ebb
From Colin McDonald and Robert Osfield, converted Traits::sharedContext from GraphicsContext* to osg:observer_ptr<GraphicsContext> to prevent dangling pointer issues.
2012-09-05 21:03:41 +00:00
Robert Osfield
14a563dc9f
Ran script to remove trailing spaces and tabs
2012-03-21 17:36:20 +00:00
Robert Osfield
ce4890fa7a
From Claus Scheiblauer, "in GraphicsWindowQt.cpp the GLWidget::keyReleaseEvent was implemented slightly different to the GLWidget::keyPressEvent, which caused the cursor keys values to be not correctly mapped from an QKeyEvent value to an osg key value when releasing a cursor key."
2012-02-08 09:34:44 +00:00
Robert Osfield
64fa6aec43
From Robert Milharcic, "This will hopefully fix some issues with osgQt, more precisely with GLWidget event handling. There are at least two current GL context braking events, QEvent::Hide and QEvent::ParentChange. When running in a multithreaded mode they both try to change current GL context in a wrong thread (main GUI thread). The QEvent::ParentChange is also problematic when running in a single threaded model because Qt is going to release current contex then delete it, and then it will create new one, and as a result the osg will continue to render to an invalid deleted context. This changes workaround above problems by deferring execution of the problematic evens. These events has to be enqueued and executed later. The enqueued event processing is currently done right after swap in a swapBuffersImplementation of GraphicsWindowQt while code is running in a render thread by calling QGLWidget handler directly. In principle the deferred events queue should be executed while in GUI thread but I couldn't find any reliable way to do this, that is without risking a deadlock. For now it is assumed, Qt is not going to execute any GUI thread only operations inside the QGLWidget handler."
2011-09-13 11:09:39 +00:00
Robert Osfield
f07a1a91c8
From Claus Scheiblauer, fixed handling of horizontal mouse wheel events.
2011-07-20 10:17:19 +00:00
Robert Osfield
4f7903f732
From Mathias Froehlich, build fixes for legacy unix systems
2011-06-07 14:26:13 +00:00
Robert Osfield
1b6700b4c7
Fixed build error
2011-05-24 10:08:40 +00:00
Robert Osfield
d4eceb0b90
From Wang Rui, added close button hint
2011-05-17 09:21:32 +00:00
Robert Osfield
a287d85585
From Jan Peciva, I have improved GraphicsWindowQt:
...
- renamed osgQt::GraphWidget to osgQt::GLWidget
as it better fits to Qt naming (osgQt::GLWidget is derived from QGLWidget
while recent GraphWidget... it is unclear, maybe QGraphicsView,
QGraphicsScene,....)
- added the code to properly manage ON_DEMAND rendering scheme
(involves osgQt::setViewer() and internal HeartBeat class)
- added forward key events functionality. It allows to not eat the key events
by GLWidget, but it forwards them to Qt processing as well.
- destroying GLWidget before GraphicsWindowQt and vice versa does not crash
the application
- it is possible to request particular QGLFormat in GLWidget constructor
- added QtWindowingSystem class
- multithread OSG rendering improvements/fixes
--
From Robert Osfield, added back in getGraphWidget() method for backwards compatibility.
2011-05-16 09:06:06 +00:00
Robert Osfield
0875b19ab8
Fixed traling spaces
2011-05-16 08:59:10 +00:00
Robert Osfield
50366ccb91
From Benjamin Wasty and David Guthrie, "currently, non-alpha-numeric keys are not recognized (except as modifiers) in osgQt, so I added the mapping code from my Qt integration to GraphicsWindowQt (which is based on Delta3D code from David Guthrie - he gave me permission to submit it under OSGPL)."
2011-03-11 16:31:01 +00:00
Robert Osfield
9b6e3fbe94
From Andreas Roth, "simple fix to support quad buffer stereo in osgQt"
2011-01-27 18:49:22 +00:00
Robert Osfield
eb9510eb72
Moved GraphicsWindowQt from osgviewerQtContext into osgQt.
2010-12-13 16:25:50 +00:00