You can subscribe to this list here.
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(128) |
Dec
(65) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2006 |
Jan
(48) |
Feb
(132) |
Mar
(95) |
Apr
(47) |
May
(54) |
Jun
(2) |
Jul
(57) |
Aug
(109) |
Sep
(131) |
Oct
(186) |
Nov
(105) |
Dec
(78) |
2007 |
Jan
(125) |
Feb
(105) |
Mar
(52) |
Apr
(104) |
May
(63) |
Jun
(116) |
Jul
(76) |
Aug
|
Sep
(18) |
Oct
(93) |
Nov
(110) |
Dec
(169) |
2008 |
Jan
(90) |
Feb
(64) |
Mar
(41) |
Apr
(23) |
May
(6) |
Jun
(18) |
Jul
(10) |
Aug
(61) |
Sep
(139) |
Oct
(50) |
Nov
(55) |
Dec
(2) |
2009 |
Jan
|
Feb
(1) |
Mar
(62) |
Apr
(22) |
May
(17) |
Jun
(19) |
Jul
(40) |
Aug
(21) |
Sep
|
Oct
(40) |
Nov
(23) |
Dec
|
2010 |
Jan
(14) |
Feb
(40) |
Mar
(9) |
Apr
(11) |
May
(19) |
Jun
(4) |
Jul
(10) |
Aug
(22) |
Sep
(15) |
Oct
|
Nov
(2) |
Dec
|
2011 |
Jan
(13) |
Feb
(10) |
Mar
|
Apr
(13) |
May
|
Jun
|
Jul
(2) |
Aug
(4) |
Sep
|
Oct
|
Nov
|
Dec
|
2012 |
Jan
|
Feb
|
Mar
|
Apr
(33) |
May
(20) |
Jun
|
Jul
(8) |
Aug
(7) |
Sep
(2) |
Oct
|
Nov
|
Dec
|
From: Braden M. <br...@us...> - 2006-02-22 04:40:11
|
Update of /cvsroot/openvrml/openvrml/doc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3494/doc Modified Files: Makefile.am doxygen-header Log Message: Changed doxygen styles and images to be consistent with OpenVRML Web site theme. Index: doxygen-header =================================================================== RCS file: /cvsroot/openvrml/openvrml/doc/doxygen-header,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** doxygen-header 30 Oct 2005 02:29:12 -0000 1.17 --- doxygen-header 22 Feb 2006 04:40:05 -0000 1.18 *************** *** 172,175 **** --- 172,201 ---- } + .memitem { + background-color: rgb(95%, 95%, 95%); + border-color: rgb(80%, 80%, 80%); + } + + .memproto { + background-color: rgb(90%, 90%, 90%); + border-color: rgb(65%, 65%, 65%); + } + + div.tabs { + background-image: url("tab_b-openvrml.png"); + } + + div.tabs span { + background-image: url("tab_l-openvrml.png"); + } + + div.tabs a { + background-image: url("tab_r-openvrml.png"); + border-bottom: 1px solid #a5a5a5; + } + + div.tabs a:link, div.tabs a:visited, div.tabs a:active, div.tabs a:hover { + color: black; + } </style> </head> Index: Makefile.am =================================================================== RCS file: /cvsroot/openvrml/openvrml/doc/Makefile.am,v retrieving revision 1.29 retrieving revision 1.30 diff -C2 -d -r1.29 -r1.30 *** Makefile.am 30 Oct 2005 03:20:17 -0000 1.29 --- Makefile.am 22 Feb 2006 04:40:05 -0000 1.30 *************** *** 45,49 **** EXTRA_DIST = $(DOCUMENTATION_FILES) manual ! MAINTAINERCLEANFILES = $(srcdir)/manual/* html-local: manual/index.html --- 45,57 ---- EXTRA_DIST = $(DOCUMENTATION_FILES) manual ! MAINTAINERCLEANFILES = \ ! $(srcdir)/manual/*.css \ ! $(srcdir)/manual/*.html \ ! $(srcdir)/manual/*.map \ ! $(srcdir)/manual/*.md5 \ ! $(srcdir)/manual/*inherit__graph*.png \ ! $(srcdir)/manual/doxygen.png \ ! $(srcdir)/manual/graph_legend.* \ ! $(srcdir)/manual/tab_?.gif html-local: manual/index.html |
From: Braden M. <br...@us...> - 2006-02-22 04:40:11
|
Update of /cvsroot/openvrml/openvrml/doc/manual In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3494/doc/manual Added Files: .cvsignore tab_b-openvrml.png tab_l-openvrml.png tab_r-openvrml.png Log Message: Changed doxygen styles and images to be consistent with OpenVRML Web site theme. --- NEW FILE: .cvsignore --- *.css *.html *.map *.md5 *inherit__graph*.png doxygen.png graph_legend.* tab_?.gif --- NEW FILE: tab_l-openvrml.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: tab_r-openvrml.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: tab_b-openvrml.png --- (This appears to be a binary file; contents omitted.) |
From: Braden M. <br...@us...> - 2006-02-22 02:23:44
|
Update of /cvsroot/openvrml/openvrml/doc/manual In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7509/manual Log Message: Directory /cvsroot/openvrml/openvrml/doc/manual added to the repository |
From: Braden M. <br...@us...> - 2006-02-21 23:01:07
|
Update of /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/antlr In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30640/ide-projects/Windows/VisualC8_0/OpenVRML/antlr Modified Files: antlr.vcproj Log Message: Removed Visual C++ 7.1 compatibility property page and enabled link-time code generation for Release configurations. Index: antlr.vcproj =================================================================== RCS file: /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/antlr/antlr.vcproj,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** antlr.vcproj 21 Feb 2006 20:47:03 -0000 1.2 --- antlr.vcproj 21 Feb 2006 23:01:02 -0000 1.3 *************** *** 21,25 **** IntermediateDirectory="$(OutDir)" ConfigurationType="4" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > --- 21,24 ---- *************** *** 88,93 **** IntermediateDirectory="$(OutDir)" ConfigurationType="4" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > <Tool --- 87,92 ---- IntermediateDirectory="$(OutDir)" ConfigurationType="4" CharacterSet="2" + WholeProgramOptimization="1" > <Tool *************** *** 157,161 **** IntermediateDirectory="$(ConfigurationName)" ConfigurationType="4" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > --- 156,159 ---- *************** *** 224,228 **** IntermediateDirectory="$(ConfigurationName)" ConfigurationType="4" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > --- 222,225 ---- *************** *** 244,250 **** <Tool Name="VCCLCompilerTool" ! Optimization="2" InlineFunctionExpansion="1" OmitFramePointers="true" AdditionalIncludeDirectories="..\..\..\..\..\lib\antlr" PreprocessorDefinitions="NDEBUG" --- 241,248 ---- <Tool Name="VCCLCompilerTool" ! Optimization="3" InlineFunctionExpansion="1" OmitFramePointers="true" + WholeProgramOptimization="true" AdditionalIncludeDirectories="..\..\..\..\..\lib\antlr" PreprocessorDefinitions="NDEBUG" |
From: Braden M. <br...@us...> - 2006-02-21 23:01:07
|
Update of /cvsroot/openvrml/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30640 Modified Files: ChangeLog Log Message: Removed Visual C++ 7.1 compatibility property page and enabled link-time code generation for Release configurations. Index: ChangeLog =================================================================== RCS file: /cvsroot/openvrml/openvrml/ChangeLog,v retrieving revision 1.1150 retrieving revision 1.1151 diff -C2 -d -r1.1150 -r1.1151 *** ChangeLog 21 Feb 2006 20:47:01 -0000 1.1150 --- ChangeLog 21 Feb 2006 23:01:01 -0000 1.1151 *************** *** 1,4 **** --- 1,14 ---- 2006-02-21 Braden McDaniel <br...@en...> + Removed Visual C++ 7.1 compatibility property page and enabled + link-time code generation for Release configurations. + + * ide-projects/Windows/VisualC8_0/OpenVRML/antlr/antlr.vcproj + * ide-projects/Windows/VisualC8_0/OpenVRML/openvrml/openvrml.vcproj + * ide-projects/Windows/VisualC8_0/OpenVRML/openvrml-gl/openvrml-gl.vcproj + * ide-projects/Windows/VisualC8_0/OpenVRML/sdl-viewer/sdl-viewer.vcproj + + 2006-02-21 Braden McDaniel <br...@en...> + Visual C++ 2005 project file updates. |
From: Braden M. <br...@us...> - 2006-02-21 23:01:07
|
Update of /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/openvrml-gl In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30640/ide-projects/Windows/VisualC8_0/OpenVRML/openvrml-gl Modified Files: openvrml-gl.vcproj Log Message: Removed Visual C++ 7.1 compatibility property page and enabled link-time code generation for Release configurations. Index: openvrml-gl.vcproj =================================================================== RCS file: /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/openvrml-gl/openvrml-gl.vcproj,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** openvrml-gl.vcproj 21 Feb 2006 20:47:05 -0000 1.2 --- openvrml-gl.vcproj 21 Feb 2006 23:01:02 -0000 1.3 *************** *** 21,25 **** IntermediateDirectory="$(OutDir)" ConfigurationType="4" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > --- 21,24 ---- *************** *** 90,95 **** IntermediateDirectory="$(OutDir)" ConfigurationType="4" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > <Tool --- 89,94 ---- IntermediateDirectory="$(OutDir)" ConfigurationType="4" CharacterSet="2" + WholeProgramOptimization="1" > <Tool *************** *** 160,164 **** IntermediateDirectory="$(ConfigurationName)" ConfigurationType="2" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > --- 159,162 ---- *************** *** 240,244 **** IntermediateDirectory="$(ConfigurationName)" ConfigurationType="2" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > --- 238,241 ---- *************** *** 260,266 **** <Tool Name="VCCLCompilerTool" ! Optimization="2" InlineFunctionExpansion="1" OmitFramePointers="true" AdditionalIncludeDirectories=""..\..\..\..\..\src\libopenvrml-gl";..\..\..\..\..\src\libopenvrml;..\openvrml;." PreprocessorDefinitions="WIN32;NDEBUG;HAVE_WINDOWS_H;OPENVRML_GL_BUILD_DLL;OPENVRML_USE_DLL" --- 257,264 ---- <Tool Name="VCCLCompilerTool" ! Optimization="3" InlineFunctionExpansion="1" OmitFramePointers="true" + WholeProgramOptimization="true" AdditionalIncludeDirectories=""..\..\..\..\..\src\libopenvrml-gl";..\..\..\..\..\src\libopenvrml;..\openvrml;." PreprocessorDefinitions="WIN32;NDEBUG;HAVE_WINDOWS_H;OPENVRML_GL_BUILD_DLL;OPENVRML_USE_DLL" *************** *** 289,292 **** --- 287,291 ---- Name="VCLinkerTool" AdditionalDependencies="GlU32.lib OpenGL32.lib" + LinkTimeCodeGeneration="1" /> <Tool |
From: Braden M. <br...@us...> - 2006-02-21 23:01:07
|
Update of /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/sdl-viewer In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30640/ide-projects/Windows/VisualC8_0/OpenVRML/sdl-viewer Modified Files: sdl-viewer.vcproj Log Message: Removed Visual C++ 7.1 compatibility property page and enabled link-time code generation for Release configurations. Index: sdl-viewer.vcproj =================================================================== RCS file: /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/sdl-viewer/sdl-viewer.vcproj,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** sdl-viewer.vcproj 21 Feb 2006 20:47:06 -0000 1.2 --- sdl-viewer.vcproj 21 Feb 2006 23:01:02 -0000 1.3 *************** *** 20,24 **** IntermediateDirectory="Debug" ConfigurationType="1" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > --- 20,23 ---- *************** *** 104,109 **** IntermediateDirectory="Release" ConfigurationType="1" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > <Tool --- 103,108 ---- IntermediateDirectory="Release" ConfigurationType="1" CharacterSet="2" + WholeProgramOptimization="1" > <Tool *************** *** 185,189 **** IntermediateDirectory="$(ConfigurationName)" ConfigurationType="1" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > --- 184,187 ---- *************** *** 269,273 **** IntermediateDirectory="$(ConfigurationName)" ConfigurationType="1" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > --- 267,270 ---- *************** *** 289,292 **** --- 286,291 ---- <Tool Name="VCCLCompilerTool" + Optimization="3" + WholeProgramOptimization="true" AdditionalIncludeDirectories="..\..\..\..\..\src\libopenvrml;"..\..\..\..\..\src\libopenvrml-gl";..\openvrml;"..\openvrml-gl"" PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;OPENVRML_USE_DLL;OPENVRML_GL_USE_DLL" *************** *** 318,321 **** --- 317,321 ---- OptimizeReferences="2" EnableCOMDATFolding="2" + LinkTimeCodeGeneration="1" TargetMachine="1" /> |
From: Braden M. <br...@us...> - 2006-02-21 23:01:07
|
Update of /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30640/ide-projects/Windows/VisualC8_0/OpenVRML/openvrml Modified Files: openvrml.vcproj Log Message: Removed Visual C++ 7.1 compatibility property page and enabled link-time code generation for Release configurations. Index: openvrml.vcproj =================================================================== RCS file: /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/openvrml/openvrml.vcproj,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** openvrml.vcproj 21 Feb 2006 20:47:04 -0000 1.2 --- openvrml.vcproj 21 Feb 2006 23:01:02 -0000 1.3 *************** *** 21,25 **** IntermediateDirectory="$(OutDir)" ConfigurationType="4" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > --- 21,24 ---- *************** *** 91,96 **** IntermediateDirectory="$(OutDir)" ConfigurationType="4" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > <Tool --- 90,95 ---- IntermediateDirectory="$(OutDir)" ConfigurationType="4" CharacterSet="2" + WholeProgramOptimization="1" > <Tool *************** *** 163,167 **** IntermediateDirectory="$(ConfigurationName)" ConfigurationType="2" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > --- 162,165 ---- *************** *** 242,246 **** IntermediateDirectory="$(ConfigurationName)" ConfigurationType="2" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" > --- 240,243 ---- *************** *** 263,269 **** Name="VCCLCompilerTool" AdditionalOptions="/Zm400" ! Optimization="2" InlineFunctionExpansion="1" OmitFramePointers="true" AdditionalIncludeDirectories=".;..\..\..\..\..\src\libopenvrml;..\..\..\..\..\lib\antlr" PreprocessorDefinitions="WIN32;BOOST_SPIRIT_THREADSAFE;NDEBUG;PACKAGE_VERSION=\"0.15.99\";BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS;BOOST_MPL_LIMIT_VECTOR_SIZE=30;OPENVRML_BUILD_DLL" --- 260,267 ---- Name="VCCLCompilerTool" AdditionalOptions="/Zm400" ! Optimization="3" InlineFunctionExpansion="1" OmitFramePointers="true" + WholeProgramOptimization="true" AdditionalIncludeDirectories=".;..\..\..\..\..\src\libopenvrml;..\..\..\..\..\lib\antlr" PreprocessorDefinitions="WIN32;BOOST_SPIRIT_THREADSAFE;NDEBUG;PACKAGE_VERSION=\"0.15.99\";BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS;BOOST_MPL_LIMIT_VECTOR_SIZE=30;OPENVRML_BUILD_DLL" *************** *** 292,295 **** --- 290,294 ---- <Tool Name="VCLinkerTool" + LinkTimeCodeGeneration="1" /> <Tool |
From: Braden M. <br...@us...> - 2006-02-21 20:47:46
|
Update of /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/antlr In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29346/ide-projects/Windows/VisualC8_0/OpenVRML/antlr Modified Files: antlr.vcproj Log Message: Visual C++ 2005 project file updates. Index: antlr.vcproj =================================================================== RCS file: /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/antlr/antlr.vcproj,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** antlr.vcproj 12 Feb 2006 03:15:39 -0000 1.1 --- antlr.vcproj 21 Feb 2006 20:47:03 -0000 1.2 *************** *** 181,185 **** MinimalRebuild="true" BasicRuntimeChecks="0" ! RuntimeLibrary="2" TreatWChar_tAsBuiltInType="true" ForceConformanceInForLoopScope="true" --- 181,185 ---- MinimalRebuild="true" BasicRuntimeChecks="0" ! RuntimeLibrary="3" TreatWChar_tAsBuiltInType="true" ForceConformanceInForLoopScope="true" |
From: Braden M. <br...@us...> - 2006-02-21 20:47:42
|
Update of /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29346/ide-projects/Windows/VisualC8_0/OpenVRML/openvrml Modified Files: openvrml-config.h openvrml.vcproj Log Message: Visual C++ 2005 project file updates. Index: openvrml.vcproj =================================================================== RCS file: /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/openvrml/openvrml.vcproj,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** openvrml.vcproj 12 Feb 2006 03:15:39 -0000 1.1 --- openvrml.vcproj 21 Feb 2006 20:47:04 -0000 1.2 *************** *** 162,166 **** OutputDirectory="$(ConfigurationName)" IntermediateDirectory="$(ConfigurationName)" ! ConfigurationType="4" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" --- 162,166 ---- OutputDirectory="$(ConfigurationName)" IntermediateDirectory="$(ConfigurationName)" ! ConfigurationType="2" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" *************** *** 186,193 **** Optimization="0" AdditionalIncludeDirectories=".;..\..\..\..\..\src\libopenvrml;..\..\..\..\..\lib\antlr" ! PreprocessorDefinitions="WIN32;BOOST_SPIRIT_THREADSAFE;PACKAGE_VERSION=\"0.15.99\";OPENVRML_BUILD_LIB;BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS;BOOST_MPL_LIMIT_VECTOR_SIZE=30" MinimalRebuild="true" BasicRuntimeChecks="0" ! RuntimeLibrary="2" TreatWChar_tAsBuiltInType="true" ForceConformanceInForLoopScope="true" --- 186,193 ---- Optimization="0" AdditionalIncludeDirectories=".;..\..\..\..\..\src\libopenvrml;..\..\..\..\..\lib\antlr" ! PreprocessorDefinitions="WIN32;BOOST_SPIRIT_THREADSAFE;PACKAGE_VERSION=\"0.15.99\";BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS;BOOST_MPL_LIMIT_VECTOR_SIZE=30;OPENVRML_BUILD_DLL" MinimalRebuild="true" BasicRuntimeChecks="0" ! RuntimeLibrary="3" TreatWChar_tAsBuiltInType="true" ForceConformanceInForLoopScope="true" *************** *** 197,201 **** Detect64BitPortabilityProblems="true" DebugInformationFormat="4" ! DisableSpecificWarnings="4226;4250;4290;4355;4800" /> <Tool --- 197,201 ---- Detect64BitPortabilityProblems="true" DebugInformationFormat="4" ! DisableSpecificWarnings="4226;4250;4251;4275;4290;4355;4661;4800" /> <Tool *************** *** 210,214 **** /> <Tool ! Name="VCLibrarianTool" /> <Tool --- 210,214 ---- /> <Tool ! Name="VCLinkerTool" /> <Tool *************** *** 216,219 **** --- 216,222 ---- /> <Tool + Name="VCManifestTool" + /> + <Tool Name="VCXDCMakeTool" /> *************** *** 225,228 **** --- 228,237 ---- /> <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCWebDeploymentTool" + /> + <Tool Name="VCPostBuildEventTool" /> *************** *** 258,262 **** OmitFramePointers="true" AdditionalIncludeDirectories=".;..\..\..\..\..\src\libopenvrml;..\..\..\..\..\lib\antlr" ! PreprocessorDefinitions="WIN32;BOOST_SPIRIT_THREADSAFE;NDEBUG;PACKAGE_VERSION=\"0.15.99\";OPENVRML_BUILD_DLL;BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS;BOOST_MPL_LIMIT_VECTOR_SIZE=30" StringPooling="true" RuntimeLibrary="2" --- 267,271 ---- OmitFramePointers="true" AdditionalIncludeDirectories=".;..\..\..\..\..\src\libopenvrml;..\..\..\..\..\lib\antlr" ! PreprocessorDefinitions="WIN32;BOOST_SPIRIT_THREADSAFE;NDEBUG;PACKAGE_VERSION=\"0.15.99\";BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS;BOOST_MPL_LIMIT_VECTOR_SIZE=30;OPENVRML_BUILD_DLL" StringPooling="true" RuntimeLibrary="2" *************** *** 269,273 **** Detect64BitPortabilityProblems="true" DebugInformationFormat="3" ! DisableSpecificWarnings="4226;4250;4290;4355;4800" /> <Tool --- 278,282 ---- Detect64BitPortabilityProblems="true" DebugInformationFormat="3" ! DisableSpecificWarnings="4226;4250;4251;4275;4290;4355;4661;4800" /> <Tool Index: openvrml-config.h =================================================================== RCS file: /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/openvrml/openvrml-config.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** openvrml-config.h 12 Feb 2006 03:15:39 -0000 1.1 --- openvrml-config.h 21 Feb 2006 20:47:04 -0000 1.2 *************** *** 38,40 **** --- 38,42 ---- # define OPENVRML_LOCAL + # define OPENVRML_ENABLE_EXCEPTION_SPECS 0 + # endif // ifndef OPENVRML_CONFIG_H |
From: Braden M. <br...@us...> - 2006-02-21 20:47:42
|
Update of /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/openvrml-gl In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29346/ide-projects/Windows/VisualC8_0/OpenVRML/openvrml-gl Modified Files: openvrml-gl.vcproj Log Message: Visual C++ 2005 project file updates. Index: openvrml-gl.vcproj =================================================================== RCS file: /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/openvrml-gl/openvrml-gl.vcproj,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** openvrml-gl.vcproj 12 Feb 2006 03:15:39 -0000 1.1 --- openvrml-gl.vcproj 21 Feb 2006 20:47:05 -0000 1.2 *************** *** 159,163 **** OutputDirectory="$(ConfigurationName)" IntermediateDirectory="$(ConfigurationName)" ! ConfigurationType="4" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" --- 159,163 ---- OutputDirectory="$(ConfigurationName)" IntermediateDirectory="$(ConfigurationName)" ! ConfigurationType="2" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" CharacterSet="2" *************** *** 182,189 **** Optimization="0" AdditionalIncludeDirectories=".;"..\..\..\..\..\src\libopenvrml-gl";..\openvrml;..\..\..\..\..\src\libopenvrml" ! PreprocessorDefinitions="WIN32;_DEBUG;_LIB;HAVE_WINDOWS_H;OPENVRML_USE_LIB;OPENVRML_GL_BUILD_LIB" MinimalRebuild="true" BasicRuntimeChecks="0" ! RuntimeLibrary="2" TreatWChar_tAsBuiltInType="true" ForceConformanceInForLoopScope="true" --- 182,189 ---- Optimization="0" AdditionalIncludeDirectories=".;"..\..\..\..\..\src\libopenvrml-gl";..\openvrml;..\..\..\..\..\src\libopenvrml" ! PreprocessorDefinitions="WIN32;_DEBUG;_LIB;HAVE_WINDOWS_H;OPENVRML_USE_DLL;OPENVRML_GL_BUILD_DLL" MinimalRebuild="true" BasicRuntimeChecks="0" ! RuntimeLibrary="3" TreatWChar_tAsBuiltInType="true" ForceConformanceInForLoopScope="true" *************** *** 206,210 **** /> <Tool ! Name="VCLibrarianTool" /> <Tool --- 206,212 ---- /> <Tool ! Name="VCLinkerTool" ! AdditionalDependencies="GlU32.lib OpenGL32.lib" ! GenerateDebugInformation="true" /> <Tool *************** *** 212,215 **** --- 214,220 ---- /> <Tool + Name="VCManifestTool" + /> + <Tool Name="VCXDCMakeTool" /> *************** *** 221,224 **** --- 226,235 ---- /> <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCWebDeploymentTool" + /> + <Tool Name="VCPostBuildEventTool" /> *************** *** 264,268 **** Detect64BitPortabilityProblems="true" DebugInformationFormat="3" ! DisableSpecificWarnings="4099;4250;4290;4800" /> <Tool --- 275,279 ---- Detect64BitPortabilityProblems="true" DebugInformationFormat="3" ! DisableSpecificWarnings="4099;4250;4251;4290;4800" /> <Tool *************** *** 277,280 **** --- 288,292 ---- <Tool Name="VCLinkerTool" + AdditionalDependencies="GlU32.lib OpenGL32.lib" /> <Tool |
From: Braden M. <br...@us...> - 2006-02-21 20:47:40
|
Update of /cvsroot/openvrml/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29346 Modified Files: ChangeLog Log Message: Visual C++ 2005 project file updates. Index: ChangeLog =================================================================== RCS file: /cvsroot/openvrml/openvrml/ChangeLog,v retrieving revision 1.1149 retrieving revision 1.1150 diff -C2 -d -r1.1149 -r1.1150 *** ChangeLog 21 Feb 2006 09:09:01 -0000 1.1149 --- ChangeLog 21 Feb 2006 20:47:01 -0000 1.1150 *************** *** 1,4 **** --- 1,16 ---- 2006-02-21 Braden McDaniel <br...@en...> + Visual C++ 2005 project file updates. + + * ide-projects/Windows/VisualC8_0/OpenVRML/OpenVRML.sln: Added file. + * ide-projects/Windows/VisualC8_0/OpenVRML/antlr/antlr.vcproj + * ide-projects/Windows/VisualC8_0/OpenVRML/openvrml/openvrml-config.h: + Build without exception specifications. + * ide-projects/Windows/VisualC8_0/OpenVRML/openvrml/openvrml.vcproj + * ide-projects/Windows/VisualC8_0/OpenVRML/openvrml-gl/openvrml-gl.vcproj + * ide-projects/Windows/VisualC8_0/OpenVRML/sdl-viewer/sdl-viewer.vcproj + + 2006-02-21 Braden McDaniel <br...@en...> + * src/libopenvrml/openvrml/scope.cpp (has_id_): Added missing OPENVRML_LOCAL. |
From: Braden M. <br...@us...> - 2006-02-21 20:47:17
|
Update of /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/sdl-viewer In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29346/ide-projects/Windows/VisualC8_0/OpenVRML/sdl-viewer Modified Files: sdl-viewer.vcproj Log Message: Visual C++ 2005 project file updates. Index: sdl-viewer.vcproj =================================================================== RCS file: /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML/sdl-viewer/sdl-viewer.vcproj,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** sdl-viewer.vcproj 12 Feb 2006 03:15:39 -0000 1.1 --- sdl-viewer.vcproj 21 Feb 2006 20:47:06 -0000 1.2 *************** *** 207,214 **** Optimization="0" AdditionalIncludeDirectories="..\openvrml;..\..\..\..\..\src\libopenvrml;"..\openvrml-gl";"..\..\..\..\..\src\libopenvrml-gl"" ! PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;OPENVRML_USE_LIB;OPENVRML_GL_USE_LIB" MinimalRebuild="true" BasicRuntimeChecks="0" ! RuntimeLibrary="2" TreatWChar_tAsBuiltInType="true" ForceConformanceInForLoopScope="true" --- 207,214 ---- Optimization="0" AdditionalIncludeDirectories="..\openvrml;..\..\..\..\..\src\libopenvrml;"..\openvrml-gl";"..\..\..\..\..\src\libopenvrml-gl"" ! PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;OPENVRML_USE_DLL;OPENVRML_GL_USE_DLL" MinimalRebuild="true" BasicRuntimeChecks="0" ! RuntimeLibrary="3" TreatWChar_tAsBuiltInType="true" ForceConformanceInForLoopScope="true" |
From: Braden M. <br...@us...> - 2006-02-21 20:47:10
|
Update of /cvsroot/openvrml/openvrml/ide-projects/Windows/VisualC8_0/OpenVRML In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29346/ide-projects/Windows/VisualC8_0/OpenVRML Added Files: .cvsignore OpenVRML.sln Log Message: Visual C++ 2005 project file updates. --- NEW FILE: OpenVRML.sln --- Microsoft Visual Studio Solution File, Format Version 9.00 # Visual C++ Express 2005 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "openvrml", "openvrml\openvrml.vcproj", "{E5287CD2-4BAC-4341-AF28-A1F9C0F5949C}" ProjectSection(ProjectDependencies) = postProject {ED407BF6-F8A1-4C7E-9952-E5454896AC63} = {ED407BF6-F8A1-4C7E-9952-E5454896AC63} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "antlr", "antlr\antlr.vcproj", "{ED407BF6-F8A1-4C7E-9952-E5454896AC63}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "openvrml-gl", "openvrml-gl\openvrml-gl.vcproj", "{141F90C2-6630-4D7A-834F-D5D57C6CFC24}" ProjectSection(ProjectDependencies) = postProject {E5287CD2-4BAC-4341-AF28-A1F9C0F5949C} = {E5287CD2-4BAC-4341-AF28-A1F9C0F5949C} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sdl-viewer", "sdl-viewer\sdl-viewer.vcproj", "{2DD5D192-3E85-4E64-854B-DF7A1FF06B76}" ProjectSection(ProjectDependencies) = postProject {ED407BF6-F8A1-4C7E-9952-E5454896AC63} = {ED407BF6-F8A1-4C7E-9952-E5454896AC63} {E5287CD2-4BAC-4341-AF28-A1F9C0F5949C} = {E5287CD2-4BAC-4341-AF28-A1F9C0F5949C} {141F90C2-6630-4D7A-834F-D5D57C6CFC24} = {141F90C2-6630-4D7A-834F-D5D57C6CFC24} EndProjectSection EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug DLL|Win32 = Debug DLL|Win32 Debug|Win32 = Debug|Win32 Release DLL|Win32 = Release DLL|Win32 Release|Win32 = Release|Win32 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {E5287CD2-4BAC-4341-AF28-A1F9C0F5949C}.Debug DLL|Win32.ActiveCfg = Debug DLL|Win32 {E5287CD2-4BAC-4341-AF28-A1F9C0F5949C}.Debug DLL|Win32.Build.0 = Debug DLL|Win32 {E5287CD2-4BAC-4341-AF28-A1F9C0F5949C}.Debug|Win32.ActiveCfg = Debug|Win32 {E5287CD2-4BAC-4341-AF28-A1F9C0F5949C}.Debug|Win32.Build.0 = Debug|Win32 {E5287CD2-4BAC-4341-AF28-A1F9C0F5949C}.Release DLL|Win32.ActiveCfg = Release DLL|Win32 {E5287CD2-4BAC-4341-AF28-A1F9C0F5949C}.Release DLL|Win32.Build.0 = Release DLL|Win32 {E5287CD2-4BAC-4341-AF28-A1F9C0F5949C}.Release|Win32.ActiveCfg = Release|Win32 {E5287CD2-4BAC-4341-AF28-A1F9C0F5949C}.Release|Win32.Build.0 = Release|Win32 {ED407BF6-F8A1-4C7E-9952-E5454896AC63}.Debug DLL|Win32.ActiveCfg = Debug DLL|Win32 {ED407BF6-F8A1-4C7E-9952-E5454896AC63}.Debug DLL|Win32.Build.0 = Debug DLL|Win32 {ED407BF6-F8A1-4C7E-9952-E5454896AC63}.Debug|Win32.ActiveCfg = Debug|Win32 {ED407BF6-F8A1-4C7E-9952-E5454896AC63}.Debug|Win32.Build.0 = Debug|Win32 {ED407BF6-F8A1-4C7E-9952-E5454896AC63}.Release DLL|Win32.ActiveCfg = Release DLL|Win32 {ED407BF6-F8A1-4C7E-9952-E5454896AC63}.Release DLL|Win32.Build.0 = Release DLL|Win32 {ED407BF6-F8A1-4C7E-9952-E5454896AC63}.Release|Win32.ActiveCfg = Release|Win32 {ED407BF6-F8A1-4C7E-9952-E5454896AC63}.Release|Win32.Build.0 = Release|Win32 {141F90C2-6630-4D7A-834F-D5D57C6CFC24}.Debug DLL|Win32.ActiveCfg = Debug DLL|Win32 {141F90C2-6630-4D7A-834F-D5D57C6CFC24}.Debug DLL|Win32.Build.0 = Debug DLL|Win32 {141F90C2-6630-4D7A-834F-D5D57C6CFC24}.Debug|Win32.ActiveCfg = Debug|Win32 {141F90C2-6630-4D7A-834F-D5D57C6CFC24}.Debug|Win32.Build.0 = Debug|Win32 {141F90C2-6630-4D7A-834F-D5D57C6CFC24}.Release DLL|Win32.ActiveCfg = Release DLL|Win32 {141F90C2-6630-4D7A-834F-D5D57C6CFC24}.Release DLL|Win32.Build.0 = Release DLL|Win32 {141F90C2-6630-4D7A-834F-D5D57C6CFC24}.Release|Win32.ActiveCfg = Release|Win32 {141F90C2-6630-4D7A-834F-D5D57C6CFC24}.Release|Win32.Build.0 = Release|Win32 {2DD5D192-3E85-4E64-854B-DF7A1FF06B76}.Debug DLL|Win32.ActiveCfg = Debug DLL|Win32 {2DD5D192-3E85-4E64-854B-DF7A1FF06B76}.Debug DLL|Win32.Build.0 = Debug DLL|Win32 {2DD5D192-3E85-4E64-854B-DF7A1FF06B76}.Debug|Win32.ActiveCfg = Debug|Win32 {2DD5D192-3E85-4E64-854B-DF7A1FF06B76}.Debug|Win32.Build.0 = Debug|Win32 {2DD5D192-3E85-4E64-854B-DF7A1FF06B76}.Release DLL|Win32.ActiveCfg = Release DLL|Win32 {2DD5D192-3E85-4E64-854B-DF7A1FF06B76}.Release DLL|Win32.Build.0 = Release DLL|Win32 {2DD5D192-3E85-4E64-854B-DF7A1FF06B76}.Release|Win32.ActiveCfg = Release|Win32 {2DD5D192-3E85-4E64-854B-DF7A1FF06B76}.Release|Win32.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection EndGlobal --- NEW FILE: .cvsignore --- *.ncb *.suo |
From: Braden M. <br...@us...> - 2006-02-21 09:09:13
|
Update of /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25790/src/libopenvrml/openvrml Modified Files: scope.cpp Log Message: Added missing OPENVRML_LOCAL. Index: scope.cpp =================================================================== RCS file: /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml/scope.cpp,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** scope.cpp 12 Feb 2006 09:40:17 -0000 1.15 --- scope.cpp 21 Feb 2006 09:09:04 -0000 1.16 *************** *** 138,142 **** namespace { ! struct has_id_ : std::unary_function<boost::shared_ptr<openvrml::node_type>, bool> { explicit has_id_(const std::string & id): --- 138,142 ---- namespace { ! struct OPENVRML_LOCAL has_id_ : std::unary_function<boost::shared_ptr<openvrml::node_type>, bool> { explicit has_id_(const std::string & id): |
From: Braden M. <br...@us...> - 2006-02-21 09:09:13
|
Update of /cvsroot/openvrml/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25790 Modified Files: ChangeLog Log Message: Added missing OPENVRML_LOCAL. Index: ChangeLog =================================================================== RCS file: /cvsroot/openvrml/openvrml/ChangeLog,v retrieving revision 1.1148 retrieving revision 1.1149 diff -C2 -d -r1.1148 -r1.1149 *** ChangeLog 21 Feb 2006 06:09:15 -0000 1.1148 --- ChangeLog 21 Feb 2006 09:09:01 -0000 1.1149 *************** *** 1,4 **** --- 1,9 ---- 2006-02-21 Braden McDaniel <br...@en...> + * src/libopenvrml/openvrml/scope.cpp (has_id_): Added missing + OPENVRML_LOCAL. + + 2006-02-21 Braden McDaniel <br...@en...> + Factored bound node stack logic into a class template. |
From: Braden M. <br...@us...> - 2006-02-21 06:09:21
|
Update of /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13047/src/libopenvrml/openvrml Modified Files: node_impl_util.cpp node_impl_util.h vrml97node.cpp Log Message: Factored bound node stack logic into a class template. Index: node_impl_util.h =================================================================== RCS file: /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml/node_impl_util.h,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** node_impl_util.h 12 Feb 2006 09:40:17 -0000 1.9 --- node_impl_util.h 21 Feb 2006 06:09:16 -0000 1.10 *************** *** 23,26 **** --- 23,27 ---- # define OPENVRML_NODE_IMPL_UTIL + # include <stack> # include <openvrml/exposedfield.h> *************** *** 450,457 **** const typename FieldValue::value_type & value = # if defined(_MSC_VER) && (_MSC_VER == 1400) ! FieldValue::value_type()); # else ! typename FieldValue::value_type()); ! # endif exposedfield(const exposedfield<FieldValue> & obj) OPENVRML_NOTHROW; --- 451,459 ---- const typename FieldValue::value_type & value = # if defined(_MSC_VER) && (_MSC_VER == 1400) ! FieldValue::value_type() # else ! typename FieldValue::value_type() ! # endif ! ); exposedfield(const exposedfield<FieldValue> & obj) OPENVRML_NOTHROW; *************** *** 1013,1016 **** --- 1015,1089 ---- return result; } + + + template <typename BindableNode> + class bound_node_stack : private std::stack<BindableNode *> { + typedef typename std::stack<BindableNode *>::container_type + container_type; + + public: + using std::stack<BindableNode *>::empty; + using std::stack<BindableNode *>::top; + + bool bind(BindableNode & node, double timestamp) + OPENVRML_THROW1(std::bad_alloc); + bool unbind(BindableNode & node, double timestamp) + OPENVRML_THROW1(std::bad_alloc); + }; + + template <typename BindableNode> + bool bound_node_stack<BindableNode>::bind(BindableNode & n, + const double timestamp) + OPENVRML_THROW1(std::bad_alloc) + { + // + // If the node is already the active node, do nothing. + // + if (this->empty() && (&n == this->top())) { return false; } + + // + // If the node is already on the stack, remove it. + // + const typename container_type::iterator pos = + std::find(this->c.begin(), this->c.end(), &n); + if (pos != this->c.end()) { this->c.erase(pos); } + + // + // Send FALSE from the currently active node's isBound. + // + if (!this->empty()) { + BindableNode & current = *this->top(); + current.bind(false, timestamp); + } + + // + // Push the node to the top of the stack and have it send + // isBound TRUE. + // + this->push(&n); + n.bind(true, timestamp); + + return true; + } + + template <typename BindableNode> + bool bound_node_stack<BindableNode>::unbind(BindableNode & n, + const double timestamp) + OPENVRML_THROW1(std::bad_alloc) + { + const typename container_type::iterator pos = + std::find(this->c.begin(), this->c.end(), &n); + + if (pos == this->c.end()) { return false; } + + n.bind(false, timestamp); + BindableNode & old_active = *this->top(); + this->c.erase(pos); + if (&n == &old_active && this->size() > 1) { + BindableNode & new_active = *this->top(); + new_active.bind(true, timestamp); + } + return true; + } } } Index: node_impl_util.cpp =================================================================== RCS file: /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml/node_impl_util.cpp,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** node_impl_util.cpp 12 Feb 2006 09:40:17 -0000 1.10 --- node_impl_util.cpp 21 Feb 2006 06:09:16 -0000 1.11 *************** *** 1165,1166 **** --- 1165,1224 ---- * @exception std::bad_alloc if memory allocation fails. */ + + + /** + * @class openvrml::node_impl_util::bound_node_stack + * + * @brief A stack of bindable nodes. + * + * The node at the top of the stack is considered the <em>active</em> + * node. <em>Binding</em> a node makes it the active node, moving it + * to the top of the stack if it already exists in the stack. + * <em>Unbinding</em> a node removes it from the stack, regardless of + * its position in the stack. See 4.6.10 of the VRML97 specification + * for further details of the semantics. + * + * @sa http://www.web3d.org/x3d/specifications/vrml/ISO-IEC-14772-VRML97/part1/concepts.html#4.6.10 + */ + + /** + * @internal + * + * @typedef std::stack<BindableNode *>::container_type openvrml::node_impl_util::bound_node_stack<BindableNode>::container_type + * + * @brief The container type. + */ + + /** + * @fn bool openvrml::node_impl_util::bound_node_stack<BindableNode>::bind(BindableNode & n, double timestamp) + * + * @brief Bind a node. + * + * Call <code>top()->bind(false)</code>. Push @p n onto the top of + * the stack, making it the active node. Call + * <code>n.bind(true)</code>. + * + * @post <code>top() == &n</code> + * + * @param[in,out] n the node to bind. + * @param[in] timestamp the current time. + * + * @exception std::bad_alloc if memory allocation fails. + */ + + /** + * @fn bool openvrml::node_impl_util::bound_node_stack<BindableNode>::unbind(BindableNode & n, double timestamp) + * + * @brief Unbind a node. + * + * Call <code>n.bind(false)</code>. Remove @p n from the top of the + * stack. The next node on the stack becomes the active node. Call + * <code>top()->bind(true)</code>. + * + * @post <code>&n</code> is not on the stack. + * + * @param[in,out] n the node to unbind. + * @param[in] timestamp the current time. + * + * @exception std::bad_alloc if memory allocation fails. + */ Index: vrml97node.cpp =================================================================== RCS file: /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml/vrml97node.cpp,v retrieving revision 1.97 retrieving revision 1.98 diff -C2 -d -r1.97 -r1.98 *** vrml97node.cpp 17 Feb 2006 06:25:16 -0000 1.97 --- vrml97node.cpp 21 Feb 2006 06:09:16 -0000 1.98 *************** *** 113,120 **** */ class OPENVRML_LOCAL background_class : public node_class { - typedef std::vector<background_node *> bound_nodes_t; - background_node * first; ! bound_nodes_t bound_nodes; public: --- 113,118 ---- */ class OPENVRML_LOCAL background_class : public node_class { background_node * first; ! bound_node_stack<background_node> bound_nodes; public: *************** *** 129,133 **** OPENVRML_THROW1(std::bad_alloc); void unbind(background_node & background, double timestamp) ! OPENVRML_NOTHROW; private: --- 127,131 ---- OPENVRML_THROW1(std::bad_alloc); void unbind(background_node & background, double timestamp) ! OPENVRML_THROW1(std::bad_alloc); private: *************** *** 374,381 **** */ class OPENVRML_LOCAL fog_class : public node_class { - typedef std::vector<fog_node *> bound_nodes_t; - fog_node * first; ! bound_nodes_t bound_nodes; public: --- 372,377 ---- */ class OPENVRML_LOCAL fog_class : public node_class { fog_node * first; ! bound_node_stack<fog_node> bound_nodes; public: *************** *** 387,392 **** bool has_first() const OPENVRML_NOTHROW; bool is_first(fog_node & fog) OPENVRML_NOTHROW; ! void bind(fog_node & fog, double timestamp) OPENVRML_THROW1(std::bad_alloc); ! void unbind(fog_node & fog, double timestamp) OPENVRML_NOTHROW; private: --- 383,390 ---- bool has_first() const OPENVRML_NOTHROW; bool is_first(fog_node & fog) OPENVRML_NOTHROW; ! void bind(fog_node & fog, double timestamp) ! OPENVRML_THROW1(std::bad_alloc); ! void unbind(fog_node & fog, double timestamp) ! OPENVRML_THROW1(std::bad_alloc); private: *************** *** 570,577 **** */ class OPENVRML_LOCAL navigation_info_class : public node_class { - typedef std::vector<navigation_info_node *> bound_nodes_t; - navigation_info_node * first; ! bound_nodes_t bound_nodes; public: --- 568,573 ---- */ class OPENVRML_LOCAL navigation_info_class : public node_class { navigation_info_node * first; ! bound_node_stack<navigation_info_node> bound_nodes; public: *************** *** 586,590 **** OPENVRML_THROW1(std::bad_alloc); void unbind(navigation_info_node & nav_info, double timestamp) ! OPENVRML_NOTHROW; private: --- 582,586 ---- OPENVRML_THROW1(std::bad_alloc); void unbind(navigation_info_node & nav_info, double timestamp) ! OPENVRML_THROW1(std::bad_alloc); private: *************** *** 962,969 **** */ class OPENVRML_LOCAL viewpoint_class : public node_class { - typedef std::vector<viewpoint_node *> bound_nodes_t; - viewpoint_node * first; ! bound_nodes_t bound_nodes; public: --- 958,963 ---- */ class OPENVRML_LOCAL viewpoint_class : public node_class { viewpoint_node * first; ! bound_node_stack<viewpoint_node> bound_nodes; public: *************** *** 977,981 **** void bind(viewpoint_node & viewpoint, double timestamp) OPENVRML_THROW1(std::bad_alloc); ! void unbind(viewpoint_node & viewpoint, double timestamp) OPENVRML_NOTHROW; private: --- 971,976 ---- void bind(viewpoint_node & viewpoint, double timestamp) OPENVRML_THROW1(std::bad_alloc); ! void unbind(viewpoint_node & viewpoint, double timestamp) ! OPENVRML_THROW1(std::bad_alloc); private: *************** *** 2311,2316 **** class back_url_exposedfield : public exposedfield<mfstring> { public: ! explicit back_url_exposedfield(background_node & node) OPENVRML_NOTHROW; ! back_url_exposedfield(const back_url_exposedfield & obj) OPENVRML_NOTHROW; virtual ~back_url_exposedfield() OPENVRML_NOTHROW; --- 2306,2313 ---- class back_url_exposedfield : public exposedfield<mfstring> { public: ! explicit back_url_exposedfield(background_node & node) ! OPENVRML_NOTHROW; ! back_url_exposedfield(const back_url_exposedfield & obj) ! OPENVRML_NOTHROW; virtual ~back_url_exposedfield() OPENVRML_NOTHROW; *************** *** 2325,2329 **** class bottom_url_exposedfield : public exposedfield<mfstring> { public: ! explicit bottom_url_exposedfield(background_node & node) OPENVRML_NOTHROW; bottom_url_exposedfield(const bottom_url_exposedfield & obj) OPENVRML_NOTHROW; --- 2322,2327 ---- class bottom_url_exposedfield : public exposedfield<mfstring> { public: ! explicit bottom_url_exposedfield(background_node & node) ! OPENVRML_NOTHROW; bottom_url_exposedfield(const bottom_url_exposedfield & obj) OPENVRML_NOTHROW; *************** *** 2340,2344 **** class front_url_exposedfield : public exposedfield<mfstring> { public: ! explicit front_url_exposedfield(background_node & node) OPENVRML_NOTHROW; front_url_exposedfield(const front_url_exposedfield & obj) OPENVRML_NOTHROW; --- 2338,2343 ---- class front_url_exposedfield : public exposedfield<mfstring> { public: ! explicit front_url_exposedfield(background_node & node) ! OPENVRML_NOTHROW; front_url_exposedfield(const front_url_exposedfield & obj) OPENVRML_NOTHROW; *************** *** 2355,2360 **** class left_url_exposedfield : public exposedfield<mfstring> { public: ! explicit left_url_exposedfield(background_node & node) OPENVRML_NOTHROW; ! left_url_exposedfield(const left_url_exposedfield & obj) OPENVRML_NOTHROW; virtual ~left_url_exposedfield() OPENVRML_NOTHROW; --- 2354,2361 ---- class left_url_exposedfield : public exposedfield<mfstring> { public: ! explicit left_url_exposedfield(background_node & node) ! OPENVRML_NOTHROW; ! left_url_exposedfield(const left_url_exposedfield & obj) ! OPENVRML_NOTHROW; virtual ~left_url_exposedfield() OPENVRML_NOTHROW; *************** *** 2369,2373 **** class right_url_exposedfield : public exposedfield<mfstring> { public: ! explicit right_url_exposedfield(background_node & node) OPENVRML_NOTHROW; right_url_exposedfield(const right_url_exposedfield & obj) OPENVRML_NOTHROW; --- 2370,2375 ---- class right_url_exposedfield : public exposedfield<mfstring> { public: ! explicit right_url_exposedfield(background_node & node) ! OPENVRML_NOTHROW; right_url_exposedfield(const right_url_exposedfield & obj) OPENVRML_NOTHROW; *************** *** 2384,2389 **** class top_url_exposedfield : public exposedfield<mfstring> { public: ! explicit top_url_exposedfield(background_node & node) OPENVRML_NOTHROW; ! top_url_exposedfield(const top_url_exposedfield & obj) OPENVRML_NOTHROW; virtual ~top_url_exposedfield() OPENVRML_NOTHROW; --- 2386,2393 ---- class top_url_exposedfield : public exposedfield<mfstring> { public: ! explicit top_url_exposedfield(background_node & node) ! OPENVRML_NOTHROW; ! top_url_exposedfield(const top_url_exposedfield & obj) ! OPENVRML_NOTHROW; virtual ~top_url_exposedfield() OPENVRML_NOTHROW; *************** *** 2433,2436 **** --- 2437,2442 ---- virtual ~background_node() OPENVRML_NOTHROW; + void bind(bool val, double timestamp) OPENVRML_THROW1(std::bad_alloc); + private: virtual void do_initialize(double timestamp) OPENVRML_NOTHROW; *************** *** 2871,2874 **** --- 2877,2882 ---- virtual ~fog_node() OPENVRML_NOTHROW; + void bind(bool val, double timestamp) OPENVRML_THROW1(std::bad_alloc); + private: virtual void do_initialize(double timestamp) OPENVRML_NOTHROW; *************** *** 3216,3220 **** virtual ~navigation_info_node() OPENVRML_NOTHROW; ! virtual const std::vector<float> & avatar_size() const OPENVRML_NOTHROW; virtual bool headlight() const OPENVRML_NOTHROW; virtual float speed() const OPENVRML_NOTHROW; --- 3224,3231 ---- virtual ~navigation_info_node() OPENVRML_NOTHROW; ! void bind(bool val, double timestamp) OPENVRML_THROW1(std::bad_alloc); ! ! virtual const std::vector<float> & avatar_size() const ! OPENVRML_NOTHROW; virtual bool headlight() const OPENVRML_NOTHROW; virtual float speed() const OPENVRML_NOTHROW; *************** *** 4112,4116 **** public: explicit position_exposedfield(viewpoint_node & node); ! position_exposedfield(const position_exposedfield & obj) OPENVRML_NOTHROW; virtual ~position_exposedfield() OPENVRML_NOTHROW; --- 4123,4128 ---- public: explicit position_exposedfield(viewpoint_node & node); ! position_exposedfield(const position_exposedfield & obj) ! OPENVRML_NOTHROW; virtual ~position_exposedfield() OPENVRML_NOTHROW; *************** *** 4146,4152 **** virtual ~viewpoint_node() OPENVRML_NOTHROW; virtual const mat4f & transformation() const OPENVRML_NOTHROW; virtual const mat4f & user_view_transform() const OPENVRML_NOTHROW; ! virtual void user_view_transform(const mat4f & transform) OPENVRML_NOTHROW; virtual const std::string & description() const OPENVRML_NOTHROW; virtual float field_of_view() const OPENVRML_NOTHROW; --- 4158,4167 ---- virtual ~viewpoint_node() OPENVRML_NOTHROW; + void bind(bool val, double timestamp) OPENVRML_THROW1(std::bad_alloc); + virtual const mat4f & transformation() const OPENVRML_NOTHROW; virtual const mat4f & user_view_transform() const OPENVRML_NOTHROW; ! virtual void user_view_transform(const mat4f & transform) ! OPENVRML_NOTHROW; virtual const std::string & description() const OPENVRML_NOTHROW; virtual float field_of_view() const OPENVRML_NOTHROW; *************** *** 5336,5379 **** * @exception std::bad_alloc if memory allocation fails. */ ! void ! background_class::bind(background_node & background, ! const double timestamp) OPENVRML_THROW1(std::bad_alloc) { ! using std::find; ! ! // ! // If the node is already the active node, do nothing. ! // ! if (!this->bound_nodes.empty() ! && &background == this->bound_nodes.back()) { ! return; ! } ! ! // ! // If the node is already on the stack, remove it. ! // ! const bound_nodes_t::iterator pos = find(this->bound_nodes.begin(), ! this->bound_nodes.end(), ! &background); ! if (pos != this->bound_nodes.end()) { this->bound_nodes.erase(pos); } ! ! // ! // Send FALSE from the currently active node's isBound. ! // ! if (!this->bound_nodes.empty()) { ! background_node & current = ! dynamic_cast<background_node &>(*this->bound_nodes.back()); ! current.is_bound_.value(false); ! node::emit_event(current.is_bound_emitter_, timestamp); ! } ! ! // ! // Push the node to the top of the stack, and have it send isBound ! // TRUE. ! // ! this->bound_nodes.push_back(&background); ! background.is_bound_.value(true); ! node::emit_event(background.is_bound_emitter_, timestamp); } --- 5351,5359 ---- * @exception std::bad_alloc if memory allocation fails. */ ! void background_class::bind(background_node & background, ! const double timestamp) OPENVRML_THROW1(std::bad_alloc) { ! this->bound_nodes.bind(background, timestamp); } *************** *** 5383,5411 **** * @param background the node to unbind. * @param timestamp the current time. */ ! void ! background_class::unbind(background_node & background, ! const double timestamp) ! OPENVRML_NOTHROW { ! using std::find; ! ! const bound_nodes_t::iterator pos = find(this->bound_nodes.begin(), ! this->bound_nodes.end(), ! &background); ! if (pos != this->bound_nodes.end()) { ! background.is_bound_.value(false); ! node::emit_event(background.is_bound_emitter_, timestamp); ! ! if (pos == this->bound_nodes.end() - 1 ! && this->bound_nodes.size() > 1) { ! background_node & newActive = ! dynamic_cast<background_node &>( ! **(this->bound_nodes.end() - 2)); ! newActive.is_bound_.value(true); ! node::emit_event(newActive.is_bound_emitter_, timestamp); ! } ! this->bound_nodes.erase(pos); ! } } --- 5363,5374 ---- * @param background the node to unbind. * @param timestamp the current time. + * + * @exception std::bad_alloc if memory allocation fails. */ ! void background_class::unbind(background_node & background, ! const double timestamp) ! OPENVRML_THROW1(std::bad_alloc) { ! this->bound_nodes.unbind(background, timestamp); } *************** *** 5419,5423 **** void background_class:: ! do_initialize(openvrml::viewpoint_node *, const double timestamp) OPENVRML_NOTHROW { if (this->first) { --- 5382,5387 ---- void background_class:: ! do_initialize(openvrml::viewpoint_node *, const double timestamp) ! OPENVRML_NOTHROW { if (this->first) { *************** *** 5469,5474 **** bottom); } else { ! assert(this->bound_nodes.back()); ! background_node & background = *this->bound_nodes.back(); // Background isn't selectable, so don't waste the time. --- 5433,5438 ---- bottom); } else { ! assert(this->bound_nodes.top()); ! background_node & background = *this->bound_nodes.top(); // Background isn't selectable, so don't waste the time. *************** *** 6521,6524 **** --- 6485,6508 ---- /** + * @brief Set the bind state. + * + * This function is called by + * <code>bound_node_stack<BindableNode>::bind</code>. It sets the + * "bind" state and fires an event; it does not actually put the + * node onto the bound node stack. + * + * @param[in] val the bind state. + * @param[in] timestamp the current time. + * + * @exception std::bad_alloc if memory allocation fails. + */ + void background_node::bind(const bool val, const double timestamp) + OPENVRML_THROW1(std::bad_alloc) + { + this->is_bound_.value(val); + node::emit_event(this->is_bound_emitter_, timestamp); + } + + /** * @brief Initialize. * *************** *** 11434,11475 **** * @param fog the node to bind. * @param timestamp the current time. */ ! void fog_class::bind(fog_node & fog, ! const double timestamp) OPENVRML_THROW1(std::bad_alloc) { ! using std::find; ! ! // ! // If the node is already the active node, do nothing. ! // ! if (!this->bound_nodes.empty() && &fog == this->bound_nodes.back()) { ! return; ! } ! ! // ! // If the node is already on the stack, remove it. ! // ! const bound_nodes_t::iterator pos = ! find(this->bound_nodes.begin(), this->bound_nodes.end(), &fog); ! if (pos != this->bound_nodes.end()) { this->bound_nodes.erase(pos); } ! ! // ! // Send FALSE from the currently active node's isBound. ! // ! if (!this->bound_nodes.empty()) { ! fog_node & current = ! dynamic_cast<fog_node &>(*this->bound_nodes.back()); ! current.is_bound_.value(false); ! node::emit_event(current.is_bound_emitter_, timestamp); ! } ! ! // ! // Push the node to the top of the stack, and have it send isBound ! // TRUE. ! // ! this->bound_nodes.push_back(&fog); ! fog.is_bound_.value(true); ! node::emit_event(fog.is_bound_emitter_, timestamp); } --- 11418,11428 ---- * @param fog the node to bind. * @param timestamp the current time. + * + * @exception std::bad_alloc if memory allocation fails. */ ! void fog_class::bind(fog_node & fog, const double timestamp) OPENVRML_THROW1(std::bad_alloc) { ! this->bound_nodes.bind(fog, timestamp); } *************** *** 11479,11504 **** * @param fog the node to unbind. * @param timestamp the current time. */ ! void fog_class::unbind(fog_node & fog, ! const double timestamp) OPENVRML_NOTHROW { ! using std::find; ! ! const bound_nodes_t::iterator pos = find(this->bound_nodes.begin(), ! this->bound_nodes.end(), ! &fog); ! if (pos != this->bound_nodes.end()) { ! fog.is_bound_.value(false); ! node::emit_event(fog.is_bound_emitter_, timestamp); ! ! if (pos == this->bound_nodes.end() - 1 ! && this->bound_nodes.size() > 1) { ! fog_node & newActive = ! dynamic_cast<fog_node &>(**(this->bound_nodes.end() - 2)); ! newActive.is_bound_.value(true); ! node::emit_event(newActive.is_bound_emitter_, timestamp); ! } ! this->bound_nodes.erase(pos); ! } } --- 11432,11442 ---- * @param fog the node to unbind. * @param timestamp the current time. + * + * @exception std::bad_alloc if memory allocation fails. */ ! void fog_class::unbind(fog_node & fog, const double timestamp) ! OPENVRML_THROW1(std::bad_alloc) { ! this->bound_nodes.unbind(fog, timestamp); } *************** *** 11511,11516 **** */ void ! fog_class:: ! do_initialize(openvrml::viewpoint_node *, const double timestamp) OPENVRML_NOTHROW { if (this->first) { --- 11449,11455 ---- */ void ! fog_class::do_initialize(openvrml::viewpoint_node *, ! const double timestamp) ! OPENVRML_NOTHROW { if (this->first) { *************** *** 11537,11541 **** if (!this->bound_nodes.empty()) { fog_node & fog = ! dynamic_cast<fog_node &>(*this->bound_nodes.back()); v.set_fog(fog.color_.sfcolor::value(), fog.visibility_range_.sffloat::value(), --- 11476,11480 ---- if (!this->bound_nodes.empty()) { fog_node & fog = ! dynamic_cast<fog_node &>(*this->bound_nodes.top()); v.set_fog(fog.color_.sfcolor::value(), fog.visibility_range_.sffloat::value(), *************** *** 11823,11826 **** --- 11762,11785 ---- /** + * @brief Set the bind state. + * + * This function is called by + * <code>bound_node_stack<BindableNode>::bind</code>. It sets the + * "bind" state and fires an event; it does not actually put the + * node onto the bound node stack. + * + * @param[in] val the bind state. + * @param[in] timestamp the current time. + * + * @exception std::bad_alloc if memory allocation fails. + */ + void fog_node::bind(const bool val, const double timestamp) + OPENVRML_THROW1(std::bad_alloc) + { + this->is_bound_.value(val); + node::emit_event(this->is_bound_emitter_, timestamp); + } + + /** * @brief Initialize. * *************** *** 15333,15379 **** * @exception std::bad_alloc if memory allocation fails. */ ! void ! navigation_info_class:: ! bind(navigation_info_node & nav_info, const double timestamp) OPENVRML_THROW1(std::bad_alloc) { ! using std::find; ! ! // ! // If the node is already the active node, do nothing. ! // ! if (!this->bound_nodes.empty() ! && &nav_info == this->bound_nodes.back()) ! { ! return; ! } ! ! // ! // If the node is already on the stack, remove it. ! // ! const bound_nodes_t::iterator pos = find(this->bound_nodes.begin(), ! this->bound_nodes.end(), ! &nav_info); ! if (pos != this->bound_nodes.end()) { this->bound_nodes.erase(pos); } ! ! // ! // Send FALSE from the currently active node's isBound. ! // ! if (!this->bound_nodes.empty()) { ! navigation_info_node & current = ! dynamic_cast<navigation_info_node &>( ! *this->bound_nodes.back()); ! current.is_bound_.value(false); ! node::emit_event(current.is_bound_emitter_, timestamp); ! } ! ! // ! // Push the node to the top of the stack, and have it send isBound ! // TRUE. ! // ! this->bound_nodes.push_back(&nav_info); ! nav_info.is_bound_.value(true); ! node::emit_event(nav_info.is_bound_emitter_, timestamp); ! this->browser().active_navigation_info(nav_info); } --- 15292,15300 ---- * @exception std::bad_alloc if memory allocation fails. */ ! void navigation_info_class::bind(navigation_info_node & nav_info, ! const double timestamp) OPENVRML_THROW1(std::bad_alloc) { ! this->bound_nodes.bind(nav_info, timestamp); this->browser().active_navigation_info(nav_info); } *************** *** 15384,15415 **** * @param nav_info the node to unbind. * @param timestamp the current time. */ ! void ! navigation_info_class:: ! unbind(navigation_info_node & nav_info, const double timestamp) ! OPENVRML_NOTHROW { ! using std::find; ! ! const bound_nodes_t::iterator pos = find(this->bound_nodes.begin(), ! this->bound_nodes.end(), ! &nav_info); ! if (pos != this->bound_nodes.end()) { ! nav_info.is_bound_.value(false); ! node::emit_event(nav_info.is_bound_emitter_, timestamp); ! ! if (pos == this->bound_nodes.end() - 1 ! && this->bound_nodes.size() > 1) { ! navigation_info_node & newActive = ! dynamic_cast<navigation_info_node &>( ! **(this->bound_nodes.end() - 2)); ! newActive.is_bound_.value(true); ! node::emit_event(newActive.is_bound_emitter_, timestamp); ! ! this->browser().active_navigation_info(nav_info); ! } else { ! this->browser().reset_default_navigation_info(); ! } ! this->bound_nodes.erase(pos); } } --- 15305,15320 ---- * @param nav_info the node to unbind. * @param timestamp the current time. + * + * @exception std::bad_alloc if memory allocation fails. */ ! void navigation_info_class::unbind(navigation_info_node & nav_info, ! const double timestamp) ! OPENVRML_THROW1(std::bad_alloc) { ! this->bound_nodes.unbind(nav_info, timestamp); ! if (this->bound_nodes.empty()) { ! this->browser().reset_default_navigation_info(); ! } else { ! this->browser().active_navigation_info(*this->bound_nodes.top()); } } *************** *** 15815,15818 **** --- 15720,15743 ---- /** + * @brief Set the bind state. + * + * This function is called by + * <code>bound_node_stack<BindableNode>::bind</code>. It sets the + * "bind" state and fires an event; it does not actually put the + * node onto the bound node stack. + * + * @param[in] val the bind state. + * @param[in] timestamp the current time. + * + * @exception std::bad_alloc if memory allocation fails. + */ + void navigation_info_node::bind(const bool val, const double timestamp) + OPENVRML_THROW1(std::bad_alloc) + { + this->is_bound_.value(val); + node::emit_event(this->is_bound_emitter_, timestamp); + } + + /** * @brief The avatar size. * *************** *** 25484,25525 **** * @exception std::bad_alloc if memory allocation fails. */ ! void ! viewpoint_class::bind(viewpoint_node & viewpoint, const double timestamp) OPENVRML_THROW1(std::bad_alloc) { ! // ! // If the node is already the active node, do nothing. ! // ! if (!this->bound_nodes.empty() ! && &viewpoint == this->bound_nodes.back()) { ! return; ! } ! ! // ! // If the node is already on the stack, remove it. ! // ! const bound_nodes_t::iterator pos = ! std::find(this->bound_nodes.begin(), this->bound_nodes.end(), ! &viewpoint); ! if (pos != this->bound_nodes.end()) { this->bound_nodes.erase(pos); } ! ! // ! // Send FALSE from the currently active node's isBound. ! // ! if (!this->bound_nodes.empty()) { ! viewpoint_node & current = ! dynamic_cast<viewpoint_node &>(*this->bound_nodes.back()); ! current.is_bound_.value(false); ! node::emit_event(current.is_bound_emitter_, timestamp); ! } ! ! // ! // Push the node to the top of the stack, and have it send isBound ! // TRUE. ! // ! this->bound_nodes.push_back(&viewpoint); ! viewpoint.is_bound_.value(true); ! node::emit_event(viewpoint.is_bound_emitter_, timestamp); ! this->browser().active_viewpoint(viewpoint); } --- 25409,25417 ---- * @exception std::bad_alloc if memory allocation fails. */ ! void viewpoint_class::bind(viewpoint_node & viewpoint, ! const double timestamp) OPENVRML_THROW1(std::bad_alloc) { ! this->bound_nodes.bind(viewpoint, timestamp); this->browser().active_viewpoint(viewpoint); } *************** *** 25530,25558 **** * @param viewpoint the node to unbind. * @param timestamp the current time. */ void viewpoint_class::unbind(viewpoint_node & viewpoint, const double timestamp) ! OPENVRML_NOTHROW { ! const bound_nodes_t::iterator pos = ! std::find(this->bound_nodes.begin(), this->bound_nodes.end(), ! &viewpoint); ! if (pos != this->bound_nodes.end()) { ! viewpoint.is_bound_.value(false); ! node::emit_event(viewpoint.is_bound_emitter_, timestamp); ! ! if (pos == this->bound_nodes.end() - 1 ! && this->bound_nodes.size() > 1) { ! viewpoint_node & newActive = ! dynamic_cast<viewpoint_node &>( ! **(this->bound_nodes.end() - 2)); ! newActive.is_bound_.value(true); ! node::emit_event(newActive.is_bound_emitter_, timestamp); ! ! this->browser().active_viewpoint(viewpoint); ! } else { ! this->browser().reset_default_viewpoint(); ! } ! this->bound_nodes.erase(pos); } } --- 25422,25437 ---- * @param viewpoint the node to unbind. * @param timestamp the current time. + * + * @exception std::bad_alloc if memory allocation fails. */ void viewpoint_class::unbind(viewpoint_node & viewpoint, const double timestamp) ! OPENVRML_THROW1(std::bad_alloc) { ! this->bound_nodes.unbind(viewpoint, timestamp); ! if (this->bound_nodes.empty()) { ! this->browser().reset_default_viewpoint(); ! } else { ! this->browser().active_viewpoint(*this->bound_nodes.top()); } } *************** *** 26151,26154 **** --- 26030,26053 ---- /** + * @brief Set the bind state. + * + * This function is called by + * <code>bound_node_stack<BindableNode>::bind</code>. It sets the + * "bind" state and fires an event; it does not actually put the + * node onto the bound node stack. + * + * @param[in] val the bind state. + * @param[in] timestamp the current time. + * + * @exception std::bad_alloc if memory allocation fails. + */ + void viewpoint_node::bind(const bool val, const double timestamp) + OPENVRML_THROW1(std::bad_alloc) + { + this->is_bound_.value(val); + node::emit_event(this->is_bound_emitter_, timestamp); + } + + /** * @brief Get the transformation of the viewpoint_node in the global * coordinate system. |
From: Braden M. <br...@us...> - 2006-02-21 06:09:19
|
Update of /cvsroot/openvrml/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13047 Modified Files: ChangeLog Log Message: Factored bound node stack logic into a class template. Index: ChangeLog =================================================================== RCS file: /cvsroot/openvrml/openvrml/ChangeLog,v retrieving revision 1.1147 retrieving revision 1.1148 diff -C2 -d -r1.1147 -r1.1148 *** ChangeLog 20 Feb 2006 16:47:02 -0000 1.1147 --- ChangeLog 21 Feb 2006 06:09:15 -0000 1.1148 *************** *** 1,2 **** --- 1,41 ---- + 2006-02-21 Braden McDaniel <br...@en...> + + Factored bound node stack logic into a class template. + + * src/libopenvrml/openvrml/node_impl_util.cpp: Added documentation + for openvrml::node_impl_util::bound_node_stack. + * src/libopenvrml/openvrml/node_impl_util.h + (openvrml::node_impl_util::bound_node_stack): Added class + template. + * src/libopenvrml/openvrml/vrml97node.cpp + (background_class): Changed to use + openvrml::node_impl_util::bound_node_stack. + (fog_class): Changed to use + openvrml::node_impl_util::bound_node_stack. + (navigation_info_class): Changed to use + openvrml::node_impl_util::bound_node_stack. + (viewpoint_class): Changed to use + openvrml::node_impl_util::bound_node_stack. + (background_node): Added member function bind(bool, double). + (fog_node): Added member function bind(bool, double). + (navigation_info_node): Added member function bind(bool, double). + (viewpoint_node): Added member function bind(bool, double). + (background_class::bind(background_node &, double)): Changed to + use openvrml::node_impl_util::bound_node_stack. + (background_class::unbind(background_node &, double)): Changed to + use openvrml::node_impl_util::bound_node_stack. + (fog_class::bind(fog_node &, double)): Changed to use + openvrml::node_impl_util::bound_node_stack. + (fog_class::unbind(fog_node &, double)): Changed to use + openvrml::node_impl_util::bound_node_stack. + (navigation_info_class::bind(navigation_info_node &, double)): + Changed to use openvrml::node_impl_util::bound_node_stack. + (navigation_info_class::unbind(navigation_info_node &, double)): + Changed to use openvrml::node_impl_util::bound_node_stack. + (viewpoint_class::bind(viewpoint_node &, double)): Changed to use + openvrml::node_impl_util::bound_node_stack. + (viewpoint_class::unbind(viewpoint_node &, double)): Changed to use + openvrml::node_impl_util::bound_node_stack. + 2006-02-20 Braden McDaniel <br...@en...> |
From: Braden M. <br...@us...> - 2006-02-20 16:47:37
|
Update of /cvsroot/openvrml/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6488 Modified Files: ChangeLog Log Message: Prefer std::ostringstream for string concatentation. Index: ChangeLog =================================================================== RCS file: /cvsroot/openvrml/openvrml/ChangeLog,v retrieving revision 1.1146 retrieving revision 1.1147 diff -C2 -d -r1.1146 -r1.1147 *** ChangeLog 20 Feb 2006 06:35:52 -0000 1.1146 --- ChangeLog 20 Feb 2006 16:47:02 -0000 1.1147 *************** *** 1,4 **** --- 1,14 ---- 2006-02-20 Braden McDaniel <br...@en...> + Prefer std::ostringstream for string concatentation. + + * src/libopenvrml/openvrml/browser.cpp + (uri::resolve_against(const uri &) const): Use std::ostringstream + for string concatentation instead of std::string operator+. + (create_file_url(const uri &)): Use std::ostringstream for string + concatentation instead of std::string operator+. + + 2006-02-20 Braden McDaniel <br...@en...> + Set the scene profile in scene::load(resource_istream&). The profile stuff is inadequate; but this hack will let it hobble |
From: Braden M. <br...@us...> - 2006-02-20 16:47:11
|
Update of /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6488/src/libopenvrml/openvrml Modified Files: browser.cpp Log Message: Prefer std::ostringstream for string concatentation. Index: browser.cpp =================================================================== RCS file: /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml/browser.cpp,v retrieving revision 1.130 retrieving revision 1.131 diff -C2 -d -r1.130 -r1.131 *** browser.cpp 20 Feb 2006 06:35:52 -0000 1.130 --- browser.cpp 20 Feb 2006 16:47:02 -0000 1.131 *************** *** 3692,3709 **** using std::list; using std::string; assert(relative(*this)); assert(!relative(absolute_uri)); ! string result = absolute_uri.scheme() + ':'; if (!this->authority().empty()) { ! return uri(result + this->scheme_specific_part()); } else { ! result += "//" + absolute_uri.authority(); } ! string path = absolute_uri.path(); ! const string::size_type last_slash_index = path.find_last_of('/'); // --- 3692,3716 ---- using std::list; using std::string; + using std::ostringstream; assert(relative(*this)); assert(!relative(absolute_uri)); ! ostringstream result; ! result.unsetf(ostringstream::skipws); ! result << absolute_uri.scheme() << ':'; if (!this->authority().empty()) { ! result << this->scheme_specific_part(); ! return uri(result.str()); } else { ! result << "//" << absolute_uri.authority(); } ! ostringstream path; ! path.unsetf(ostringstream::skipws); ! path << absolute_uri.path(); ! const string::size_type last_slash_index = ! path.str().find_last_of('/'); // *************** *** 3711,3720 **** // file name). // ! path = path.substr(1, last_slash_index); // // Append the relative path. // ! path += this->path(); // --- 3718,3727 ---- // file name). // ! path.str(path.str().substr(1, last_slash_index)); // // Append the relative path. // ! path << this->path(); // *************** *** 3725,3731 **** string::size_type segment_start_index = 0; do { ! slash_index = path.find('/', segment_start_index); ! string segment = path.substr(segment_start_index, ! slash_index - segment_start_index); if (!segment.empty()) { path_segments.push_back(segment); --- 3732,3739 ---- string::size_type segment_start_index = 0; do { ! slash_index = path.str().find('/', segment_start_index); ! string segment = ! path.str().substr(segment_start_index, ! slash_index - segment_start_index); if (!segment.empty()) { path_segments.push_back(segment); *************** *** 3754,3760 **** // Reconstruct the path. // ! path = string(); for (pos = path_segments.begin(); pos != path_segments.end(); ++pos) { ! path += '/' + *pos; } --- 3762,3768 ---- // Reconstruct the path. // ! path.str(string()); for (pos = path_segments.begin(); pos != path_segments.end(); ++pos) { ! path << '/' << *pos; } *************** *** 3762,3778 **** // End in a slash? // ! if (*(this->path().end() - 1) == '/') { path += '/'; } ! result += path; const string query = this->query(); ! if (!query.empty()) { result += '?' + query; } const string fragment = this->fragment(); ! if (!fragment.empty()) { result += '#' + fragment; } uri result_uri; try { ! result_uri = uri(result); } catch (openvrml::invalid_url &) { assert(false); // If we constructed a bad URI, something is wrong. --- 3770,3786 ---- // End in a slash? // ! if (*(this->path().end() - 1) == '/') { path << '/'; } ! result << path.str(); const string query = this->query(); ! if (!query.empty()) { result << '?' << query; } const string fragment = this->fragment(); ! if (!fragment.empty()) { result << '#' << fragment; } uri result_uri; try { ! result_uri = uri(result.str()); } catch (openvrml::invalid_url &) { assert(false); // If we constructed a bad URI, something is wrong. *************** *** 8879,8884 **** using std::string; ! string result = "file://"; uri result_uri; --- 8887,8895 ---- using std::string; + using std::ostringstream; ! ostringstream result; ! result.unsetf(ostringstream::skipws); ! result << "file://"; uri result_uri; *************** *** 8913,8925 **** # endif ! result += resolved_path; const string query = relative_uri.query(); ! if (!query.empty()) { result += '?' + query; } const string fragment = relative_uri.fragment(); ! if (!fragment.empty()) { result += '#' + fragment; } ! result_uri = uri(result); } catch (openvrml::invalid_url &) { --- 8924,8936 ---- # endif ! result << resolved_path; const string query = relative_uri.query(); ! if (!query.empty()) { result << '?' << query; } const string fragment = relative_uri.fragment(); ! if (!fragment.empty()) { result << '#' << fragment; } ! result_uri = uri(result.str()); } catch (openvrml::invalid_url &) { |
From: Braden M. <br...@us...> - 2006-02-20 06:35:55
|
Update of /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21363/src/libopenvrml/openvrml Modified Files: browser.cpp Log Message: Set the scene profile in scene::load(resource_istream&). The profile stuff is inadequate; but this hack will let it hobble along until a comprehensive fix is applied. That is, it should allow VRML97 to continue to work. Index: browser.cpp =================================================================== RCS file: /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml/browser.cpp,v retrieving revision 1.129 retrieving revision 1.130 diff -C2 -d -r1.129 -r1.130 *** browser.cpp 20 Feb 2006 03:39:46 -0000 1.129 --- browser.cpp 20 Feb 2006 06:35:52 -0000 1.130 *************** *** 9096,9103 **** --- 9096,9105 ---- if (iequals(in.type(), "model/vrml") || iequals(in.type(), "x-world/x-vrml")) { + this->profile_ = vrml97_profile_id; Vrml97Scanner scanner(in); Vrml97Parser parser(scanner, this->url_); parser.vrmlScene(*this, this->nodes_); } else if (iequals(in.type(), "model/x3d+vrml")) { + this->profile_ = x3d_full_profile_id; X3DVrmlScanner scanner(in); X3DVrmlParser parser(scanner, this->url_); |
From: Braden M. <br...@us...> - 2006-02-20 06:35:54
|
Update of /cvsroot/openvrml/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21363 Modified Files: ChangeLog Log Message: Set the scene profile in scene::load(resource_istream&). The profile stuff is inadequate; but this hack will let it hobble along until a comprehensive fix is applied. That is, it should allow VRML97 to continue to work. Index: ChangeLog =================================================================== RCS file: /cvsroot/openvrml/openvrml/ChangeLog,v retrieving revision 1.1145 retrieving revision 1.1146 diff -C2 -d -r1.1145 -r1.1146 *** ChangeLog 20 Feb 2006 04:45:52 -0000 1.1145 --- ChangeLog 20 Feb 2006 06:35:52 -0000 1.1146 *************** *** 1,2 **** --- 1,12 ---- + 2006-02-20 Braden McDaniel <br...@en...> + + Set the scene profile in scene::load(resource_istream&). The + profile stuff is inadequate; but this hack will let it hobble + along until a comprehensive fix is applied. That is, it should + allow VRML97 to continue to work. + + * src/libopenvrml/openvrml/browser.cpp + (openvrml::scene::load(resource_istream &)): Set the scene profile. + 2006-02-19 Braden McDaniel <br...@en...> |
From: Braden M. <br...@us...> - 2006-02-20 04:45:56
|
Update of /cvsroot/openvrml/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13921 Modified Files: ChangeLog Log Message: Removed OPENVRML_API from class templates. The Microsoft compiler doesn't like it there; and it probably shouldn't be there anyway. Index: ChangeLog =================================================================== RCS file: /cvsroot/openvrml/openvrml/ChangeLog,v retrieving revision 1.1144 retrieving revision 1.1145 diff -C2 -d -r1.1144 -r1.1145 *** ChangeLog 20 Feb 2006 04:42:27 -0000 1.1144 --- ChangeLog 20 Feb 2006 04:45:52 -0000 1.1145 *************** *** 1,4 **** --- 1,16 ---- 2006-02-19 Braden McDaniel <br...@en...> + Removed OPENVRML_API from class templates. The Microsoft compiler + doesn't like it there; and it probably shouldn't be there anyway. + + * src/libopenvrml/openvrml/event.h + (openvrml::field_value_listener<FieldValue>): Removed + OPENVRML_API. + (openvrml::node_field_value_listener<FieldValue>): Removed + OPENVRML_API. + (openvrml::field_value_emitter<FieldValue>): Removed OPENVRML_API. + + 2006-02-19 Braden McDaniel <br...@en...> + * src/libopenvrml/openvrml/field_value.h (openvrml::field_value): The Microsoft C/C++ compiler 14.0 seems |
From: Braden M. <br...@us...> - 2006-02-20 04:45:55
|
Update of /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13921/src/libopenvrml/openvrml Modified Files: event.h Log Message: Removed OPENVRML_API from class templates. The Microsoft compiler doesn't like it there; and it probably shouldn't be there anyway. Index: event.h =================================================================== RCS file: /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml/event.h,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** event.h 12 Feb 2006 09:40:17 -0000 1.12 --- event.h 20 Feb 2006 04:45:52 -0000 1.13 *************** *** 61,65 **** template <typename FieldValue> ! class OPENVRML_API field_value_listener : public virtual event_listener { BOOST_CLASS_REQUIRE(FieldValue, openvrml, FieldValueConcept); --- 61,65 ---- template <typename FieldValue> ! class field_value_listener : public virtual event_listener { BOOST_CLASS_REQUIRE(FieldValue, openvrml, FieldValueConcept); *************** *** 137,141 **** template <typename FieldValue> ! class OPENVRML_API node_field_value_listener : public virtual node_event_listener, public field_value_listener<FieldValue> { --- 137,141 ---- template <typename FieldValue> ! class node_field_value_listener : public virtual node_event_listener, public field_value_listener<FieldValue> { *************** *** 194,198 **** template <typename FieldValue> ! class OPENVRML_API field_value_emitter : public virtual event_emitter { BOOST_CLASS_REQUIRE(FieldValue, openvrml, FieldValueConcept); --- 194,198 ---- template <typename FieldValue> ! class field_value_emitter : public virtual event_emitter { BOOST_CLASS_REQUIRE(FieldValue, openvrml, FieldValueConcept); |
From: Braden M. <br...@us...> - 2006-02-20 04:42:30
|
Update of /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12808/src/libopenvrml/openvrml Modified Files: field_value.h Log Message: The Microsoft C/C++ compiler 14.0 seems picky about requiring the OPENVRML_API macro in the friend declaration of operator<<. Index: field_value.h =================================================================== RCS file: /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml/field_value.h,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** field_value.h 12 Feb 2006 09:40:17 -0000 1.19 --- field_value.h 20 Feb 2006 04:42:27 -0000 1.20 *************** *** 43,48 **** class OPENVRML_API field_value { ! friend std::ostream & operator<<(std::ostream & out, ! const field_value & value); protected: --- 43,48 ---- class OPENVRML_API field_value { ! friend OPENVRML_API std::ostream & ! operator<<(std::ostream & out, const field_value & value); protected: |