Commit Graph

240 Commits

Author SHA1 Message Date
Robert Osfield
6931ae4878 Added include/osg/GLObjects + .cpp which provide osg::flush*DeletedGLObjects() methods.
Added and cleaned up DeleteHandler calls in osgViewer to help avoid crashes on exit.

Changed DatabasePager across to dynamically checcking osg::getCompileContext(..)

Updated wrappers.
2007-07-06 13:08:51 +00:00
Robert Osfield
d1fa520349 Added support for managing a CompileContext. Rearranged the DeleteHandler::flushAll call. 2007-07-05 18:33:20 +00:00
Robert Osfield
0434d29ad4 From Adndre Garneau, "Attached is a fix to prevent a cursor being shown in graphics windows when
traits specify that none should be used (a recent change forced a
left-pointer cursor as the default). "
2007-07-05 10:57:34 +00:00
Robert Osfield
70bbb06dd5 Commented out "fix" that explictly sets the key modifier state as this change
actually broke the key modifier state management.
2007-07-05 10:51:47 +00:00
Robert Osfield
7f0b3144ea Added checking of GUIEventAdpter::getHandled(). 2007-07-03 13:26:48 +00:00
Robert Osfield
c7a316e445 From Mike Connell, "This is a tiny fix for win32.
The current code takes the mouse cursor position and adds it to the
window (left,top) position, and sends the mouse cursor there. But this
doesn't take into account the window decoration.

The new code converts the given (x,y) coordinates from the client area
coordinate system to the screen instead using ClientToScreen. I think
this is the natural windows way to do it.

Tested on XP with osgviewer
"

Note from Robet Osfield, made a few changes to layout to make it more consistent 
with the rest of the OSG and used #if 0 instead if (0) blocks.
2007-06-30 16:19:56 +00:00
Robert Osfield
4953e23ab5 From Trajce Nikolov, fixes to pbuffer setup 2007-06-28 12:59:04 +00:00
Robert Osfield
49c15572a9 From Stephan Huber, "attached you'll find a first implementation of pbuffer-support for os x.
I used osgprerender --pbuffer to test the carbon-implementation, for now
it works :)
"
2007-06-27 20:44:12 +00:00
Robert Osfield
14470e12c4 From Andy Skinner, fixed return value. 2007-06-27 17:01:54 +00:00
Robert Osfield
97ff495a9c From Rajce Nickolov, improvements to PixelBufferWin32 and GraphicsWindowWin32 2007-06-27 10:37:30 +00:00
Robert Osfield
350b25c49b From Trajce Nickolov, improvements to PixelBufferWin32. 2007-06-25 11:32:19 +00:00
Robert Osfield
1e506da145 From Trajce Nikolov, PixelBufferWin32 implementation 2007-06-24 10:18:54 +00:00
Robert Osfield
b9947a8189 Simplified decoration code and added support for reading Traits::supportsResize 2007-06-23 21:55:35 +00:00
Robert Osfield
581b1c322e Added setting of the Camera's projection matrix to fit the windowing aspect ratio. 2007-06-23 11:21:54 +00:00
Robert Osfield
1b3468413d Added ability to compile OpenGL objects via pbuffers in the DatabasePager/Viewer 2007-06-22 14:48:18 +00:00
Robert Osfield
e8a65e4cff From Trajce Nikolov, windows build fixes 2007-06-21 11:20:54 +00:00
Robert Osfield
4677fe20a7 Added dummy init method 2007-06-20 12:34:37 +00:00
Robert Osfield
1de128de27 Added placeholder for PixelBufferWin32 2007-06-20 12:29:19 +00:00
Robert Osfield
78b6ada743 Completed implementation of PixelBufferX11. 2007-06-20 11:59:27 +00:00
Robert Osfield
ac69f49b55 Added beginnings of osgViewer::PixelBufferX11 2007-06-19 17:12:05 +00:00
Robert Osfield
a9287fe824 Added ability to set the keyboard bindings in the RecordaAnimationPathHandler 2007-06-13 20:52:07 +00:00
Robert Osfield
21033536a7 From Jeremy Moles & Robert Osfield, Added support for playback of animation paths using 'Z' key 2007-06-13 20:34:16 +00:00
Robert Osfield
29be5312a0 Added OSG_SCREEN and OSG_WINDOW env var checking in the Viewer::realize() 2007-06-13 11:09:31 +00:00
Robert Osfield
a9a55de053 Added osgViewer::View::setUpViewInWindow(...) method and command line option into
osgViewer::Viewer to allow you to specify the window dimentions and screen for
the window on startup.
2007-06-13 10:38:40 +00:00
Robert Osfield
64c8e7c2bc From Stephan Huber, "while porting my own code to the new osgViewer I discover more and more
bugs in the Carbon-implementation of GraphicsWindow, so here's another
fix for setWindowDecorationImplementation, now updates the
titlebar-height, and fixes some display-issues when switching the
decoration on/off.
"
2007-06-12 15:38:09 +00:00
Robert Osfield
c7f5d96caf From Stephan Huber, "the computation of the windowtitlebar-height was wrong, attached you'll
find a fixed version for GraphicsWindowCarbon.cpp
"
2007-06-12 08:28:41 +00:00
Robert Osfield
08a793eb87 From Stephan Huber and Robert Osfield,
Stephan: "attached you'll find some modifications to the GraphicsWindow-class and
their platform-dependant implementations.

The problem:
setWindowRectangle and setWindowDecoration do not update the
traits-object, so, if you call setWindowRectangle on a
not-realized-window it will open with another size when realized later.
getWindowRectangle reports possible wrong sizes if setWindowRectangle
called before.

My solution:
split the implementation in two parts:
GraphicsWindow::setWindowRectangle will update its traits-object and
call afterwards the virtual method setWindowRectangleImplementation
(which is implemented by the derived platformspecific classess). For
setWindowDecoration I am useing a similar mechanism.

I hope you'll find the submission useful, the Win32 and X11 changes are
not tested but should work."

Changes to this made by Robert are call of resized in setWindowRectangle 
instead of setting of Traits, and use of a bool return type.
2007-06-10 19:53:18 +00:00
Robert Osfield
90ae3f385b Added DisplaySettings to osg::Camera, and support into osg::View for initializing
the Camera to the DisplaySettings ScreenWidth/Height/Distance.  Added support
for dual screen horizontal split stereo.
2007-06-09 10:06:38 +00:00
Robert Osfield
3e8be9ac7d From Stephan Huber, "attached you'll find a new GraphicsWindowCarbon-header and .cpp, the
changes I made:

+ put a warning in the console if a nonexistant screen is requested
+ add getters for the aglcontext and pixelformat -- I need access to
them in my own code.
"
2007-06-08 11:04:30 +00:00
Robert Osfield
5a8ec8f470 Commented out the Scene Stats entry as its not implemented yet. 2007-06-07 20:26:29 +00:00
Robert Osfield
51d489fb97 Added View::home() method and updated wrappers 2007-06-07 09:58:49 +00:00
Robert Osfield
3f7ffb088e Revert the setting of SingleThreaded under Windows in suggestBestThreadingModel() 2007-06-06 17:01:37 +00:00
Robert Osfield
34b4fb524d Fixed includes 2007-06-06 14:51:08 +00:00
Robert Osfield
36d50301cf From Olaf Flebbe, "an implementation of GraphicsWindow::setCursor for WIN32." 2007-06-06 11:28:44 +00:00
Robert Osfield
85c8797bc4 Moved HelpHandler and StatsHandler classes into ViewerEventHandlers header, removed HelpHandler and StatsHandler headers 2007-06-06 11:21:13 +00:00
Robert Osfield
6844ac0209 Moved SimpleViewer from osgViewer into the osgviewerCocoa example directory as this
is the only place in the OSG that now relies upon SimpleViewer.
2007-06-06 10:58:21 +00:00
Robert Osfield
6e3c9ad3d3 Added support for passing in ArgumentParser in Viewer and CompositeViewer constructor 2007-06-06 10:57:02 +00:00
Robert Osfield
1f2cfa91c3 Warning fix 2007-06-04 15:05:59 +00:00
Robert Osfield
a1fc3e63a8 From Martin Lavery and Robert Osfield, added use of hardwarded value kCGLCEMPEngine
to fix build failure on slightly older versions of OSX.
2007-06-04 11:14:17 +00:00
Robert Osfield
b5791629ea Added Viewer::setUpViewerAsEmbeddedInWindow convinience method 2007-06-03 09:34:28 +00:00
Robert Osfield
822868ca31 From Mathias Froelich, "have done an interface to change the mouse cursor in the X11 graphics
window.
The win32 implementation is still in its original shape since I have no win32
implementation available.

I have chosen the enum approach for the first cut. That is benefitial since
the user does not need to track creation of mouse cursors for different
windows and displays in presence of multiple viewer windows.

The default set of available mouse shapes is the same set that was available
with glut. That set served many OpenGL applications well, so the hope is that
this is enough.

Even though, that implementation is still extensible:
I have digged out the way SDL defines new mouse cursors and added a still
documented out function prototype in the GraphicsWindow that can be used to
extend the current implemtation for arbitrary mouse shapes. That is not
implemented yet.

I hope that somebody with a win32 test system can catch up that implementation
on win32."
2007-06-01 19:43:28 +00:00
Robert Osfield
78c831f850 Changed name of AnimationPathHandler to RecordCameraPathHandler 2007-06-01 10:42:24 +00:00
Robert Osfield
5a80e4bfdc From Jeremy Moles, new event handler to record the camera path. A few small tweaks by Robert Osfield to make it more consistent with the old osgProducer::Viewer behavior. 2007-06-01 10:39:27 +00:00
Robert Osfield
784383ac08 Added camera event callback support into osgViewer 2007-05-27 17:29:29 +00:00
Robert Osfield
a49ec6e78d Updated calling of master camera's update callback 2007-05-27 15:24:41 +00:00
Robert Osfield
4e3e789acf Added testing to see if camera allows events before automatically attaching a trackball manipulator 2007-05-27 14:52:43 +00:00
Robert Osfield
27a1406819 From Blake Williams, "I discovered why the \u2013CompositeViewer option for the osghud example does not work. The run() function adds a camera manipulator to each view that does not have one assigned, which causes the view with the HUD camera to point somewhere other than where it should. I just added a check before a new default camera manipulator is added to ensure that the view allows event focus before a camera manipulator is added." 2007-05-26 15:47:53 +00:00
Robert Osfield
1676ae839f Added C entry point graphicswindow_X11() to help with static build support 2007-05-25 15:26:13 +00:00
Robert Osfield
babee83194 From Serge Lages, support for install api directories, with tweaks from Robert Osfield 2007-05-24 08:51:55 +00:00
Robert Osfield
bfcaba55fb Added platform specific GraphicsWindow* headers to public headers listings 2007-05-23 12:21:20 +00:00