DEF Button1 Button {. . . url "one.wrl" }
DEF Button2 Button {. . . url "two.wrl" }
DEF Button3 Button {. . . url "three.wrl" }
Shape {
geometry DEF Label Text {. . . }
}
DEF Loaded Transform {
translation 1.0 0.0 0.0
children [ ]
}
DEF Loader Script {
field SFNode myself USE Loader
field MFString lastUrl ""
eventIn MFString loadUrl
eventIn MFNode vrmlLoaded
eventOut MFNode node_changed
eventOut MFString string_changed
url "vrmlscript:
function loadUrl( str, ts )
{
lastUrl =
str;
Browser.createVrmlFromURL(str,
myself,'vrmlLoaded');
string_changed[0]
= 'Loading...';
}
function vrmlLoaded( nd, ts ) {
node_changed = nd;
string_changed[0] = lastUrl[0];
} "
}
ROUTE Button1.url_changed TO Loader.loadUrl
ROUTE Button2.url_changed TO Loader.loadUrl
ROUTE Button3.url_changed TO Loader.loadUrl
ROUTE Loader.node_changed TO Loaded.set_children
ROUTE Loader.string_changed TO Label.set_string
|