diff --git a/src/osgWrappers/osg/GraphicsContext.cpp b/src/osgWrappers/osg/GraphicsContext.cpp index 7788b5f80..166097219 100644 --- a/src/osgWrappers/osg/GraphicsContext.cpp +++ b/src/osgWrappers/osg/GraphicsContext.cpp @@ -105,18 +105,18 @@ BEGIN_ABSTRACT_OBJECT_REFLECTOR(osg::GraphicsContext) __bool__isRealized, "Return true if the graphics context has been realised and is ready to use. ", ""); - I_Method0(void, makeCurrent, - __void__makeCurrent, + I_Method0(bool, makeCurrent, + __bool__makeCurrent, "Make this graphics context current. ", - "Implementated by first aquiring a lock of the GraphicsContext mutex, and then doing a call to makeCurrentImplementation(). "); - I_Method1(void, makeContextCurrent, IN, osg::GraphicsContext *, readContext, - __void__makeContextCurrent__GraphicsContext_P1, + "Implementated by calling makeCurrentImplementation(). Returns true on success. "); + I_Method1(bool, makeContextCurrent, IN, osg::GraphicsContext *, readContext, + __bool__makeContextCurrent__GraphicsContext_P1, "Make this graphics context current with specified read context. ", - "Implementated by first aquiring a lock of the GraphicsContext mutex, and then doing a call to makeContextCurrentImplementation(). "); - I_Method0(void, releaseContext, - __void__releaseContext, - "Release the graphics context by unlocking the GraphicsContext mutex. ", - ""); + "Implementated by calling makeContextCurrentImplementation(). Returns true on success. "); + I_Method0(bool, releaseContext, + __bool__releaseContext, + "Release the graphics context. ", + "Returns true on success. "); I_Method0(bool, isCurrent, __bool__isCurrent, "Return true if the current thread has this OpenGL graphics context. ", @@ -153,14 +153,18 @@ BEGIN_ABSTRACT_OBJECT_REFLECTOR(osg::GraphicsContext) __void__closeImplementation, "Close the graphics context implementation. ", "Pure virtual - must be implemented by concrate implementations of GraphicsContext. "); - I_Method0(void, makeCurrentImplementation, - __void__makeCurrentImplementation, + I_Method0(bool, makeCurrentImplementation, + __bool__makeCurrentImplementation, "Make this graphics context current implementation. ", "Pure virtual - must be implemented by concrate implementations of GraphicsContext. "); - I_Method1(void, makeContextCurrentImplementation, IN, osg::GraphicsContext *, readContext, - __void__makeContextCurrentImplementation__GraphicsContext_P1, + I_Method1(bool, makeContextCurrentImplementation, IN, osg::GraphicsContext *, readContext, + __bool__makeContextCurrentImplementation__GraphicsContext_P1, "Make this graphics context current with specified read context implementation. ", "Pure virtual - must be implemented by concrate implementations of GraphicsContext. "); + I_Method0(bool, releaseContextImplementation, + __bool__releaseContextImplementation, + "Release the graphics context implementation. ", + ""); I_Method1(void, bindPBufferToTextureImplementation, IN, GLenum, buffer, __void__bindPBufferToTextureImplementation__GLenum, "Pure virtual, Bind the graphics context to associated texture implementation. ", @@ -173,6 +177,22 @@ BEGIN_ABSTRACT_OBJECT_REFLECTOR(osg::GraphicsContext) __void__resized__int__int__int__int, "resized method should be called when the underlying window has been resized and the GraphicsWindow and associated Cameras must be updated to keep in sync with the new size. ", ""); + I_Method1(void, setResizedCallback, IN, osg::GraphicsContext::ResizedCallback *, rc, + __void__setResizedCallback__ResizedCallback_P1, + "Set the resized callback which overrides the GraphicsConext::realizedImplementation(), allow developers to provide custom behavior in response to a window being resized. ", + ""); + I_Method0(osg::GraphicsContext::ResizedCallback *, getResizedCallback, + __ResizedCallback_P1__getResizedCallback, + "Get the resized callback which overrides the GraphicsConext::realizedImplementation(). ", + ""); + I_Method0(const osg::GraphicsContext::ResizedCallback *, getResizedCallback, + __C5_ResizedCallback_P1__getResizedCallback, + "Get the const resized callback which overrides the GraphicsConext::realizedImplementation(). ", + ""); + I_Method4(void, resizedImplementation, IN, int, x, IN, int, y, IN, int, width, IN, int, height, + __void__resizedImplementation__int__int__int__int, + "resized implementation, by default resizes the viewports and aspect ratios the cameras associated with the graphics Window. ", + ""); I_Method0(osg::GraphicsContext::Cameras &, getCameras, __Cameras_R1__getCameras, "Get the the list of cameras associated with this graphics context. ", @@ -217,6 +237,9 @@ BEGIN_ABSTRACT_OBJECT_REFLECTOR(osg::GraphicsContext) I_SimpleProperty(osg::GraphicsThread *, GraphicsThread, __GraphicsThread_P1__getGraphicsThread, __void__setGraphicsThread__GraphicsThread_P1); + I_SimpleProperty(osg::GraphicsContext::ResizedCallback *, ResizedCallback, + __ResizedCallback_P1__getResizedCallback, + __void__setResizedCallback__ResizedCallback_P1); I_SimpleProperty(osg::State *, State, __State_P1__getState, __void__setState__State_P1); @@ -225,6 +248,17 @@ BEGIN_ABSTRACT_OBJECT_REFLECTOR(osg::GraphicsContext) 0); END_REFLECTOR +BEGIN_ABSTRACT_OBJECT_REFLECTOR(osg::GraphicsContext::ResizedCallback) + I_BaseType(osg::Referenced); + I_Constructor0(____ResizedCallback, + "", + ""); + I_Method5(void, resizedImplementation, IN, osg::GraphicsContext *, gc, IN, int, x, IN, int, y, IN, int, width, IN, int, height, + __void__resizedImplementation__GraphicsContext_P1__int__int__int__int, + "", + ""); +END_REFLECTOR + BEGIN_VALUE_REFLECTOR(osg::GraphicsContext::ScreenIdentifier) I_Constructor0(____ScreenIdentifier, "", diff --git a/src/osgWrappers/osgGA/EventQueue.cpp b/src/osgWrappers/osgGA/EventQueue.cpp index cd84f4b05..f63ce9ee1 100644 --- a/src/osgWrappers/osgGA/EventQueue.cpp +++ b/src/osgWrappers/osgGA/EventQueue.cpp @@ -154,6 +154,22 @@ BEGIN_OBJECT_REFLECTOR(osgGA::EventQueue) __void__keyRelease__int__double, "Method for adapting keyboard press events. ", "Note, special keys such as Ctrl/Function keys should be adapted to GUIEventAdapter::KeySymbol mappings, with specified time. "); + I_Method0(void, closeWindow, + __void__closeWindow, + "Method for adapting close window events. ", + ""); + I_Method1(void, closeWindow, IN, double, time, + __void__closeWindow__double, + "Method for adapting close window event with specified event time. ", + ""); + I_Method0(void, quitApplication, + __void__quitApplication, + "Method for adapting application quit events. ", + ""); + I_Method1(void, quitApplication, IN, double, time, + __void__quitApplication__double, + "Method for adapting application quit events with specified event time. ", + ""); I_Method1(void, frame, IN, double, time, __void__frame__double, "Method for adapting frame events. ", diff --git a/src/osgWrappers/osgGA/GUIEventAdapter.cpp b/src/osgWrappers/osgGA/GUIEventAdapter.cpp index c39b9c839..b779e4303 100644 --- a/src/osgWrappers/osgGA/GUIEventAdapter.cpp +++ b/src/osgWrappers/osgGA/GUIEventAdapter.cpp @@ -41,6 +41,8 @@ BEGIN_ENUM_REFLECTOR(osgGA::GUIEventAdapter::EventType) I_EnumLabel(osgGA::GUIEventAdapter::PEN_PRESSURE); I_EnumLabel(osgGA::GUIEventAdapter::PEN_PROXIMITY_ENTER); I_EnumLabel(osgGA::GUIEventAdapter::PEN_PROXIMITY_LEAVE); + I_EnumLabel(osgGA::GUIEventAdapter::CLOSE_WINDOW); + I_EnumLabel(osgGA::GUIEventAdapter::QUIT_APPLICATION); END_REFLECTOR BEGIN_ENUM_REFLECTOR(osgGA::GUIEventAdapter::KeySymbol) diff --git a/src/osgWrappers/osgProducer/GraphicsContextImplementation.cpp b/src/osgWrappers/osgProducer/GraphicsContextImplementation.cpp index 1fa388c62..5e690278c 100644 --- a/src/osgWrappers/osgProducer/GraphicsContextImplementation.cpp +++ b/src/osgWrappers/osgProducer/GraphicsContextImplementation.cpp @@ -39,6 +39,10 @@ BEGIN_OBJECT_REFLECTOR(osgProducer::GraphicsContextImplementation) __C5_Producer_RenderSurface_P1__getRenderSurface, "Return the const RenderSurface that implements the graphics context. ", ""); + I_Method0(bool, valid, + __bool__valid, + "Return whether a valid and usable GraphicsContext has been created - assume success. ", + ""); I_Method0(bool, realizeImplementation, __bool__realizeImplementation, "Realise the GraphicsContext. ", @@ -51,14 +55,18 @@ BEGIN_OBJECT_REFLECTOR(osgProducer::GraphicsContextImplementation) __void__closeImplementation, "Close the graphics context. ", ""); - I_Method0(void, makeCurrentImplementation, - __void__makeCurrentImplementation, + I_Method0(bool, makeCurrentImplementation, + __bool__makeCurrentImplementation, "Make this graphics context current. ", ""); - I_Method1(void, makeContextCurrentImplementation, IN, osg::GraphicsContext *, readContext, - __void__makeContextCurrentImplementation__osg_GraphicsContext_P1, + I_Method1(bool, makeContextCurrentImplementation, IN, osg::GraphicsContext *, readContext, + __bool__makeContextCurrentImplementation__osg_GraphicsContext_P1, "Make this graphics context current with specified read context. ", ""); + I_Method0(bool, releaseContextImplementation, + __bool__releaseContextImplementation, + "Release the graphics context. ", + ""); I_Method1(void, bindPBufferToTextureImplementation, IN, GLenum, buffer, __void__bindPBufferToTextureImplementation__GLenum, "Bind the graphics context to associated texture. ", diff --git a/src/osgWrappers/osgUtil/DelaunayTriangulator.cpp b/src/osgWrappers/osgUtil/DelaunayTriangulator.cpp index 8e13c9bab..e4beeb099 100644 --- a/src/osgWrappers/osgUtil/DelaunayTriangulator.cpp +++ b/src/osgWrappers/osgUtil/DelaunayTriangulator.cpp @@ -51,7 +51,7 @@ BEGIN_OBJECT_REFLECTOR(osgUtil::DelaunayConstraint) ""); I_Method1(void, merge, IN, osgUtil::DelaunayConstraint *, dco, __void__merge__DelaunayConstraint_P1, - "Add vertices and constraint loops from dco Can be used to generate extra vertices where dco crosses 'this' using osgUtil::tesselator to insert overlap vertices. ", + "Add vertices and constraint loops from dco Can be used to generate extra vertices where dco crosses 'this' using osgUtil::tessellator to insert overlap vertices. ", ""); I_Method1(void, removeVerticesInside, IN, const osgUtil::DelaunayConstraint *, dco, __void__removeVerticesInside__C5_DelaunayConstraint_P1, diff --git a/src/osgWrappers/osgViewer/GraphicsWindow.cpp b/src/osgWrappers/osgViewer/GraphicsWindow.cpp index 90979ea9a..0aa9d531d 100644 --- a/src/osgWrappers/osgViewer/GraphicsWindow.cpp +++ b/src/osgWrappers/osgViewer/GraphicsWindow.cpp @@ -60,6 +60,10 @@ BEGIN_OBJECT_REFLECTOR(osgViewer::GraphicsWindow) __void__useCursor__bool, "Switch on/off the cursor. ", ""); + I_Method0(bool, valid, + __bool__valid, + "Return whether a valid and usable GraphicsContext has been created. ", + ""); I_Method0(bool, realizeImplementation, __bool__realizeImplementation, "Realise the GraphicsContext implementation, Pure virtual - must be implemented by concrate implementations of GraphicsContext. ", @@ -72,14 +76,18 @@ BEGIN_OBJECT_REFLECTOR(osgViewer::GraphicsWindow) __void__closeImplementation, "Close the graphics context implementation. ", "Pure virtual - must be implemented by concrate implementations of GraphicsContext. "); - I_Method0(void, makeCurrentImplementation, - __void__makeCurrentImplementation, + I_Method0(bool, makeCurrentImplementation, + __bool__makeCurrentImplementation, "Make this graphics context current implementation. ", "Pure virtual - must be implemented by concrate implementations of GraphicsContext. "); - I_Method1(void, makeContextCurrentImplementation, IN, osg::GraphicsContext *, x, - __void__makeContextCurrentImplementation__GraphicsContext_P1, + I_Method1(bool, makeContextCurrentImplementation, IN, osg::GraphicsContext *, x, + __bool__makeContextCurrentImplementation__GraphicsContext_P1, "Make this graphics context current with specified read context implementation. ", "Pure virtual - must be implemented by concrate implementations of GraphicsContext. "); + I_Method0(bool, releaseContextImplementation, + __bool__releaseContextImplementation, + "Release the graphics context. ", + ""); I_Method1(void, bindPBufferToTextureImplementation, IN, GLenum, x, __void__bindPBufferToTextureImplementation__GLenum, "Pure virtual, Bind the graphics context to associated texture implementation. ",