Robert Osfield
63d101b653
Added frame support to ComboBox.
...
Improved the alingment support for text
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14252 16af8721-9629-0410-8352-f15c8da7e697
2014-06-12 14:05:28 +00:00
Robert Osfield
584035b663
Added handling of AligmentSettings of Text layout
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14251 16af8721-9629-0410-8352-f15c8da7e697
2014-06-11 16:31:17 +00:00
Robert Osfield
86a9a45525
Implemented more robust intersection handling for mouse interactions. Wired up even handling of ComboBox popup.
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14250 16af8721-9629-0410-8352-f15c8da7e697
2014-06-11 10:55:33 +00:00
Robert Osfield
977ec20751
Refactored Callback system in osg::Node, osg::Drawable, osg::StateSet and osg::StateAttribute to use a new osg::Callback base class.
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14244 16af8721-9629-0410-8352-f15c8da7e697
2014-06-05 16:26:13 +00:00
Robert Osfield
35d6cb812f
Updated shaders from OpenSceneGraph-Data sources
2014-06-04 08:59:31 +00:00
Robert Osfield
333a16a88d
Reverted change of Node::ParentList from being a vector<Node*> back to a vector<Group*>
2014-06-03 09:52:55 +00:00
Robert Osfield
3dde165f14
Refactor osg::Geode to subclass from osg::Group and reuse the NodeList children container
2014-06-03 09:23:24 +00:00
Robert Osfield
2d41cbd0cf
Removed OSG_USE_BOUND and associated osg::Bound adapter class to avoid problems with BoundingBox::expandBy/expandByRadius() implementation choosing a null BoundingBox from
...
the osg::Bound class causing crashes.
2014-06-02 16:20:39 +00:00
Robert Osfield
199506296a
Implemented basic frame graphic
2014-05-30 16:44:36 +00:00
Robert Osfield
189c0b3477
Futher work on ComboBox/Popup
2014-05-29 15:21:42 +00:00
Robert Osfield
a45ba05bdd
Added beginnings of ComboBox popup functionality.
2014-05-29 10:51:26 +00:00
Robert Osfield
26a7c30229
Added cached Depth and ColorMask to reduce the amount of duplicate state in the osgUI subgraph
2014-05-28 10:18:57 +00:00
Robert Osfield
1fcb91900a
Replaced Widget::GraphicsSubgraph with GraphicsSubgraphMap to allow finer control of when the rendering subgraphs are done.
2014-05-28 10:06:14 +00:00
Robert Osfield
6af9edf33b
Improved handling of text
2014-05-27 14:14:51 +00:00
Robert Osfield
faced0a896
Removed Dialog/Popup::open/close() methods as they are replaced by the setVisible() method
2014-05-26 16:32:20 +00:00
Robert Osfield
5d635287c0
Implemented Widger::Visible and Enabled usage
2014-05-26 16:27:33 +00:00
Robert Osfield
b04a4813ba
Added Visible and Enalbed properties to Widget
2014-05-26 16:15:33 +00:00
Robert Osfield
5d234ba021
Fixed missing initilaizer
2014-05-26 16:15:12 +00:00
Robert Osfield
71352ea56d
Added item serializer
2014-05-26 15:58:18 +00:00
Robert Osfield
f50ec0fe8e
Implemented clipping of widget to the widgets extents.
2014-05-23 18:59:16 +00:00
Robert Osfield
cca18e82e8
Implemented scheme for making sure nested widgest overdraw parent widgets graphics
2014-05-23 15:00:49 +00:00
Robert Osfield
55c2041d4d
Added wrappers for open and close methods
2014-05-23 15:00:09 +00:00
Robert Osfield
bda5ec4875
Added osgUI::Widget::set/getGraphicsSubgraph() to hold the subgraph that does the rendering portion of widgets
2014-05-22 10:02:35 +00:00
Robert Osfield
0b5b3213fe
Addd method implementation in serializers
2014-05-21 16:15:02 +00:00
Robert Osfield
d8adc80c2c
Fixed handling of traverse
2014-05-21 10:17:31 +00:00
Robert Osfield
20fd80de3a
Improved handling of callback object to open the door to use of general osg::CallbackObject as mechnisms for something simialr to Qt's signal/slot mechanism.
2014-05-21 09:45:11 +00:00
Robert Osfield
9859f3110b
Renamed callbacks to avoid overlap with Node callbacks
2014-05-21 09:06:17 +00:00
Robert Osfield
8346f0ebe1
Improved the handling of updating of text
2014-05-20 08:35:39 +00:00
Robert Osfield
d917987938
Added shell of Popup class
2014-05-20 08:35:19 +00:00
Robert Osfield
e4004118db
Added check against whether an event has been handled or not before actioning escape/quit.
2014-05-20 08:34:32 +00:00
Robert Osfield
4ce2e075c4
Add shell of Dialog class
2014-05-19 10:11:50 +00:00
Robert Osfield
1b34fed500
Added handling of up/down key to ComboBox
2014-05-19 09:30:36 +00:00
Robert Osfield
87fd1d38fb
Added initial cut of ComboBox
2014-05-16 19:24:58 +00:00
Robert Osfield
3e00764649
Added initial shell of PushButton implementation
2014-05-16 10:38:40 +00:00
Robert Osfield
03fc0c3662
Added support for intesecting Drawable that are attached directly to the scene graph without an osg::Geode
2014-05-15 16:30:17 +00:00
Robert Osfield
5b60708e80
From Sebastian Messerschmidt, "There was some small error due to MS non-conformity handling comments correctly."
2014-05-15 14:57:28 +00:00
Robert Osfield
d8a06f827e
From Pjotr Svetachov, build fixes for VisualStudio
2014-05-15 14:45:28 +00:00
Robert Osfield
85386daa25
Added osgGA dependency
2014-05-15 13:34:50 +00:00
Robert Osfield
20b9f3ff88
Added Node::asDrawable() and Node::asGeometry() methods to provide a low cost way of casting a node to Drawable and Geoemtry.
...
Changed the Group::computeBound() method so that it takes account of the a Drawable's BoundingBox.
2014-05-15 09:26:59 +00:00
Robert Osfield
afcf54b108
Fixed the bounding sphere computation and handling of Drawable as the root of the scene graph
2014-05-14 16:52:18 +00:00
Robert Osfield
74f91037a7
Further work on Bound class/Node::getBound() and Drawable::getBound() and usage in OSG codebase
2014-05-14 16:01:40 +00:00
Robert Osfield
ff21af2b0d
Cleaned up code
2014-05-14 16:00:08 +00:00
Robert Osfield
4174d72a52
2014-05-14 10:19:43 +00:00
Robert Osfield
12a737ae02
Changed the Node::ParentList to be a list of osg::Node rather than osg::Group, and added addChild, removeChild, replaceChild virtual method to Node to enable code
...
to user code compile with minimal modifications to account for the new change to the Node ParentList.
2014-05-13 08:43:07 +00:00
Robert Osfield
b2c7bacfe9
From Farshid Lashkari, "As discussed, I've added the ability to handle Drawable objects within the NodeVisitor class. Here is an overview of the changes:
...
- Added apply(Drawable) and apply(Geometry) to NodeVisitor
- Added accept(NodeVisitor) method to Drawable/Geometry
- Added traverse(NodeVisitor) to Geode which calls accept(NodeVisitor) on all Drawables
- Updated CullVisitor to use new apply(Drawable) to handle drawables. The apply(Billboard) method still manually handles the drawables since it is depends on the billboard settings. I needed to disable the traverse within billboard to prevent duplicate traversal of drawables.
- Update other osgUtil node visitors (GLObjectsVisitor, IncrementalCompileOperation, ..) to use new apply(Drawable) method.
"
2014-05-12 12:10:35 +00:00
Robert Osfield
ead92353fe
Added beginnings of new osgUI library, a replacement for osgWidget that works fully in 3D/stereo and is scriptable.
2014-05-12 11:27:54 +00:00
Robert Osfield
490b351330
Replaced obsolete __linux usage.
2014-05-06 16:38:57 +00:00
Robert Osfield
cf66750d7b
From Farshid Lashkari, "fix for the Collada loader where it would access a null string in some cases"
2014-05-02 09:12:36 +00:00
Robert Osfield
1f33e2a2a0
From Ali Botorabi, "recently I ran into a problem with Microsoft's Appverifier while using OpenThreads on win32 platform. The Appverifier complained about an invalid thread handle during starting of a new thread. After looking closer into the problem it seemed that indeed a potential root of problem may be in the thread startup code. See the line below in Win32Thread.cpp (line number 347):
...
pd->tid.set( (void*)_beginthreadex(NULL,static_cast<unsigned>(pd->stackSize),ThreadPrivateActions::StartThread,static_cast<void *>(this),0,&ID));
the method "pd->tid.set" sets the thread id, however via the startup function "ThreadPrivateActions::StartThread" that thread id is used (see further down the call hierarchy the line "int status = SetThreadPriority( pd->tid.get(), prio);".
Until now I never ran into any problem in debug or release builds, though. It seems that furtunately the tid.set method was executed always before the tid.get method in the startup code. However, this may make trouble in the furture. A simple solution is the following: just replace the line above with following two lines:
pd->tid.set( (void*)_beginthreadex(NULL,static_cast<unsigned>(pd->stackSize),ThreadPrivateActions::StartThread,static_cast<void *>(this),CREATE_SUSPENDED,&ID));
ResumeThread(pd->tid.get());
The trick is just starting the thread in suspended mode so the StartThread function does not get executed and we can safely store the tid by pd->tid.set. Then start the Thread by calling ResumeThread."
2014-05-02 09:11:16 +00:00
Robert Osfield
298f1c65b6
Renamed the new include/osg/OpenGL automatically configured header file to include/osg/GL replacing the original hand built GL header
2014-04-30 13:19:22 +00:00