// AJAX3D1b.js


var web3Dbrowser = null;
var web3Dbrowsercontext = null;
var theText = null;


window.onload = initX3Dbrowser;

function initX3Dbrowser()
{    
  web3Dbrowser = null;

  // Connect host DOM to X3D Browser SAI
  web3Dbrowser = document.objx3d.getBrowser();

  if (web3Dbrowser == null)
  {
    alert("Couldn't get X3D Browser object!");
    return;
  }
  // Connect SAI browserChanged event to DOM
  listener = new Object();
  listener.browserChanged = web3DbrowserChanged;
  // assign DOM  browserChanged() handler
  web3Dbrowser.addBrowserListener(listener);

  // Load target X3D scene 
  web3Dbrowser.loadUrlS('helloAJAX3D.x3d');
}

function web3DbrowserChanged(evt)
{
  web3Dbrowsercontext = null;
  theText = null;

  if (evt != 0)    // BROWSER_INITIALIZED = 0
  {
    alert("browserChanged(evt) != 0");
    return;
  }

  // target scene is loaded and running
  web3Dbrowsercontext = web3Dbrowser.getExecutionContext();
  if (web3Dbrowsercontext == null)
  {
    alert("Couldn't get executionContext object!");
    return;
  }

  // DEF Text node THETEXT should be there in this example
  theText = web3Dbrowsercontext.getNode("THETEXT");
  if (theText == null)
  {
    alert("Couldn't get THETEXT!");
    return;
  }
}

function onSayHelloAJAX3D()
{
  theText.string[0] = "Hello";
  theText.string[1] = "AJAX3D!";
}

function onSayHelloX3D()
{
  theText.string[0] = "Hello";
  theText.string[1] = "X3D!";
}
