From Ulrich Hertlien with little bits from Robert Osfield and Chris Hanson, added provisionl support for controlling sync to vblank.

This commit is contained in:
Robert Osfield
2010-04-21 17:16:13 +00:00
parent 6e03d73efe
commit 9eebb2eb23
8 changed files with 160 additions and 91 deletions

View File

@@ -36,7 +36,8 @@ class GraphicsWindowCarbon : public osgViewer::GraphicsWindow, public osgViewer:
_initialized(false),
_realized(false),
_ownsWindow(true),
_currentCursor(RightArrowCursor)
_currentCursor(RightArrowCursor),
_currentVSync(true)
{
_traits = traits;
@@ -108,7 +109,10 @@ class GraphicsWindowCarbon : public osgViewer::GraphicsWindow, public osgViewer:
virtual void setWindowName (const std::string & name);
virtual void useCursor(bool cursorOn);
virtual void setCursor(MouseCursor mouseCursor);
/** Set sync-to-vblank. */
virtual void setSyncToVBlank(bool on);
WindowRef getNativeWindowRef() { return _window; }
bool handleMouseEvent(EventRef theEvent);
@@ -168,6 +172,7 @@ class GraphicsWindowCarbon : public osgViewer::GraphicsWindow, public osgViewer:
bool _closeRequested;
UInt32 _lastModifierKeys;
MouseCursor _currentCursor;
bool _currentVSync;
};
}

View File

@@ -86,7 +86,10 @@ class OSGVIEWER_EXPORT GraphicsWindowWin32 : public osgViewer::GraphicsWindow, p
/** Set mouse cursor to a specific shape.*/
virtual void setCursor(MouseCursor cursor);
/** Set sync-to-vblank. */
virtual void setSyncToVBlank(bool on);
/** Handle a native (Win32) windowing event as received from the system */
virtual LRESULT handleNativeWindowingEvent( HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam );