# Automatically generated PSI dialog (PSI version 1.0)
# Wed Jan 24 03:57:53 EST 1996


SF_SIZES 0 0.3 2;

c.chmenu = SWITCHER
{
    LOOK(plain) VALUE(c.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(c.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(c.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

c.switcher = BUTTONSTRIP radio
{
    LAYOUT(horizontal!) VALUE(c.switcherval) LOOK(none)

    BUTTON push LOOKICON(HSV, bevel);
    BUTTON push LOOKICON(RGB, bevel);
}


SF_SIZES 0.15 0.15 3.5;
c.gad = 
{
    LAYOUT (vertical!) LOOK(plain) STRETCH(1, 0)
    {
	LAYOUT(horizontal!) MARGIN (0, 0) STRETCH(1,0)

	{ LOOKTEXT(plain, "Light Color") STRETCH(1, 0)}

	BUTTON push HELP("Colour List") VALUE(c.plus)
		LOOKICON(DialogBox, bevel)
		SIZE(HEIGHT(c.switcher), HEIGHT(c.switcher));

	c.switcher;
	c.chmenu;
    }

    SWITCHER
    {
	VALUE(c.switcherval) STRETCH(1, 0)

	HSVEDIT VALUE(c.val) STRETCH(1, 0);
	RGBEDIT VALUE(c.val) STRETCH(1, 0);
    }
}
SF_SIZES 0 0.3 2;

dimmer.chmenu = SWITCHER
{
    LOOK(plain) VALUE(dimmer.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(dimmer.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(dimmer.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

dimmer.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Dimmer") SIZE (1.5, 0)}
    SLIDERFIELD float 0 1 VALUE(dimmer.val) STRETCH(1,0);
    dimmer.chmenu;
}

atten.chmenu = SWITCHER
{
    LOOK(plain) VALUE(atten.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(atten.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(atten.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

atten.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Attenuation") SIZE (1.5, 0)}
    SLIDERFIELD float 0.001 1000 VALUE(atten.val) STRETCH(1,0);
    atten.chmenu;
}


spread.chmenu = SWITCHER
{
    LOOK(plain) VALUE(spread.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(spread.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(spread.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

spread.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Shadow Softness") SIZE (1.5, 0)}
    SLIDERFIELD float 0 10 VALUE(spread.val) STRETCH(1,0);
    spread.chmenu;
}


reflect.chmenu = SWITCHER
{
    LOOK(plain) VALUE(reflect.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(reflect.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(reflect.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

reflect.gad =
{
    LAYOUT(horizontal!) STRETCH(1, 0)

    { LOOKTEXT(plain, "Refl. Map Scale") SIZE (1.5, 0)}
    VECTORFIELD(2) float VALUE(reflect.val) STRETCH(1, 0);
    reflect.chmenu;
}



shadowmask.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Shadow Mask") SIZE (1.5, 0)}
    FIELD string VALUE(shadowmask.val) STRETCH(1,0);
}


autogen.gad = BUTTON toggle LOOKTEXT(check, "Auto-Generate Depth Map")
		VALUE(autogen.val) STRETCH(1, 0);


depthmap.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Z-Depth Map") SIZE (1.5, 0)}
    FIELD string VALUE(depthmap.val) STRETCH(1,0);
    BUTTON push VALUE(depthmap.plus) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


specmap.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Reflection Map") SIZE (1.5, 0)}
    FIELD string VALUE(specmap.val) STRETCH(1,0);
    BUTTON push VALUE(specmap.plus) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


diffmap.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Diffuse Map") SIZE (1.5, 0)}
    FIELD string VALUE(diffmap.val) STRETCH(1,0);
    BUTTON push VALUE(diffmap.plus) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


projmap.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Projector Map") SIZE (1.5, 0)}
    FIELD string VALUE(projmap.val) STRETCH(1,0);
    BUTTON push VALUE(projmap.plus) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


shader.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Shader") SIZE (1.5, 0)}
    FIELD string VALUE(shader.val) STRETCH(1,0);
    BUTTON push VALUE(shader.plus) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


rishader.gad = 
 {
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "RMan Shader") SIZE (1.5, 0)}
    FIELD string VALUE(rishader.val) STRETCH(1,0);
    BUTTON push VALUE(rishader.plus) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


genshader.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Generic Shader") SIZE (1.5, 0)}
    FIELD string VALUE(genshader.val) STRETCH(1,0);
    BUTTON push VALUE(genshader.plus) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


fogshader.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Atmosphere") SIZE (1.5, 0)}
    FIELD string VALUE(fogshader.val) STRETCH(1,0);
    BUTTON push VALUE(fogshader.plus) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


projection.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Projection") SIZE(1.5, 0)}
    projection.menu VALUE(projection.menuval)
		LOOKTEXT(select, projection.menuval) STRETCH(1, 0);
}


orthowidth.chmenu = SWITCHER
{
    LOOK(plain) VALUE(orthowidth.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(orthowidth.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(orthowidth.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

orthowidth.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Ortho Width") SIZE (1.5, 0)}
    SLIDERFIELD float 0.001 10 VALUE(orthowidth.val) STRETCH(1,0);
    orthowidth.chmenu;
}


focal.chmenu = SWITCHER
{
    LOOK(plain) VALUE(focal.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(focal.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(focal.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

focal.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Focal Length") SIZE (1.5, 0)}
    SLIDERFIELD float 0.001 100 VALUE(focal.val) STRETCH(1,0);
    focal.chmenu;
}


aperture.chmenu = SWITCHER
{
    LOOK(plain) VALUE(aperture.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(aperture.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(aperture.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

aperture.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Aperture") SIZE (1.5, 0)}
    SLIDERFIELD float 0.001 100 VALUE(aperture.val) STRETCH(1,0);
    aperture.chmenu;
}


shutter.chmenu = SWITCHER
{
    LOOK(plain) VALUE(shutter.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(shutter.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(shutter.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

shutter.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Shutter Speed") SIZE (1.5, 0)}
    SLIDERFIELD float 0 1 VALUE(shutter.val) STRETCH(1,0);
    shutter.chmenu;
}


near.chmenu = SWITCHER
{
    LOOK(plain) VALUE(near.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(near.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(near.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

near.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Near") SIZE (1.5, 0)}
    SLIDERFIELD float 0.001 1 VALUE(near.val) STRETCH(1,0);
    near.chmenu;
}


far.chmenu = SWITCHER
{
    LOOK(plain) VALUE(far.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(far.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(far.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

far.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Far") SIZE (1.5, 0)}
    SLIDERFIELD float 10 1000 VALUE(far.val) STRETCH(1,0);
    far.chmenu;
}


curvature.chmenu = SWITCHER
{
    LOOK(plain) VALUE(curvature.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(curvature.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(curvature.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

curvature.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Lens Curvature") SIZE (1.5, 0)}
    SLIDERFIELD float 0 1 VALUE(curvature.val) STRETCH(1,0);
    curvature.chmenu;
}


fstop.chmenu = SWITCHER
{
    LOOK(plain) VALUE(fstop.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(fstop.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(fstop.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

fstop.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "F-Stop") SIZE (1.5, 0)}
    SLIDERFIELD float 0 1 VALUE(fstop.val) STRETCH(1,0);
    fstop.chmenu;
}


focus.chmenu = SWITCHER
{
    LOOK(plain) VALUE(focus.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(focus.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(focus.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

focus.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Focus") SIZE (1.5, 0)}
    SLIDERFIELD float 0 1 VALUE(focus.val) STRETCH(1,0);
    focus.chmenu;
}


resmenu.gad = 
{
    resmenu.menu VALUE(resmenu.menuval) LOOK(arrowright) SIZE(0.25, 0.25);
}

res.gad =
{
    LAYOUT(horizontal!) STRETCH(1, 0)

    { LOOKTEXT(plain, "Resolution") SIZE (1.5, 0)}
    VECTORFIELD(2) integer VALUE(res.val) STRETCH(1, 0);
    resmenu.gad;
}



aspect.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Pixel Aspect") SIZE (1.5, 0)}
    SLIDERFIELD float 0 1 VALUE(aspect.val) STRETCH(1,0);
}


xOrd.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Transform Order") SIZE(1.5, 0)}
    xOrd.menu VALUE(xOrd.menuval)
		LOOKTEXT(select, xOrd.menuval) STRETCH(1, 0);
}


rOrd.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Rotate Order") SIZE(1.5, 0)}
    rOrd.menu VALUE(rOrd.menuval)
		LOOKTEXT(select, rOrd.menuval) STRETCH(1, 0);
}


t.chmenu = SWITCHER
{
    LOOK(plain) VALUE(t.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(t.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(t.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

t.gad =
{
    LAYOUT(horizontal!) STRETCH(1, 0)

    { LOOKTEXT(plain, "Translate") SIZE (1.5, 0)}
    VECTORFIELD(3) float VALUE(t.val) STRETCH(1, 0);
    t.chmenu;
}


r.chmenu = SWITCHER
{
    LOOK(plain) VALUE(r.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(r.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(r.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

r.gad =
{
    LAYOUT(horizontal!) STRETCH(1, 0)

    { LOOKTEXT(plain, "Rotation") SIZE (1.5, 0)}
    VECTORFIELD(3) float VALUE(r.val) STRETCH(1, 0);
    r.chmenu;
}
pathobj.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Path Object") SIZE(1.5, 0)}
    pathobj.menu VALUE(pathobj.menuval)
		LOOKTEXT(select, pathobj.menuval) STRETCH(1, 0);
}


pos.chmenu = SWITCHER
{
    LOOK(plain) VALUE(pos.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(pos.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(pos.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

pos.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Position") SIZE (1.5, 0)}
    SLIDERFIELD float 0 10 VALUE(pos.val) STRETCH(1,0);
    pos.chmenu;
}


display.chmenu = SWITCHER
{
    LOOK(plain) VALUE(display.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(display.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(display.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

display.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    BUTTON toggle LOOKTEXT(check, "Display") VALUE(tdisplay.val) SIZE(2.0, 0);
    FIELD integer VALUE(display.val) STRETCH(1,0);
    display.chmenu;
}


phantom.chmenu = SWITCHER
{
    LOOK(plain) VALUE(phantom.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(phantom.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(phantom.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

phantom.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    BUTTON toggle LOOKTEXT(check, "Phantom") VALUE(tphantom.val) SIZE(2.0, 0);
    FIELD integer VALUE(phantom.val) STRETCH(1,0);
    phantom.chmenu;
}


matte.chmenu = SWITCHER
{
    LOOK(plain) VALUE(matte.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(matte.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(matte.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

matte.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    BUTTON toggle LOOKTEXT(check, "Matte") VALUE(tmatte.val) SIZE(2.0, 0);
    FIELD integer VALUE(matte.val) STRETCH(1,0);
    matte.chmenu;
}


rbounce.chmenu = SWITCHER
{
    LOOK(plain) VALUE(rbounce.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(rbounce.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(rbounce.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

rbounce.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    BUTTON toggle LOOKTEXT(check,"Ray Bounce") VALUE(trbounce.val) SIZE(2.0, 0);
    FIELD integer VALUE(rbounce.val) STRETCH(1,0);
    rbounce.chmenu;
}


dbound.chmenu = SWITCHER
{
    LOOK(plain) VALUE(dbound.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(dbound.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(dbound.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

dbound.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    BUTTON toggle LOOKTEXT(check,"Displace Bound") VALUE(tdbound.val)
		SIZE(2.0, 0);
    FIELD float VALUE(dbound.val) STRETCH(1,0);
    dbound.chmenu;
}


display.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(display.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(display.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(display.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

display.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    BUTTON toggle LOOKTEXT(check, "Display") VALUE(tdisplay.val.expr)
		SIZE(1.5, 0);
    FIELD string VALUE(display.val.expr) STRETCH(1,0);
    display.chmenu.expr;
}


phantom.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(phantom.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(phantom.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(phantom.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

phantom.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    BUTTON toggle LOOKTEXT(check, "Phantom") VALUE(tphantom.val.expr)
		SIZE(1.5, 0);
    FIELD string VALUE(phantom.val.expr) STRETCH(1,0);
    phantom.chmenu.expr;
}


matte.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(matte.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(matte.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(matte.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

matte.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    BUTTON toggle LOOKTEXT(check, "Matte") VALUE(tmatte.val.expr)
		SIZE(1.5, 0);
    FIELD string VALUE(matte.val.expr) STRETCH(1,0);
    matte.chmenu.expr;
}


rbounce.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(rbounce.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(rbounce.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(rbounce.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

rbounce.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    BUTTON toggle LOOKTEXT(check, "Ray Bounce") VALUE(trbounce.val.expr)
		SIZE(1.5, 0);
    FIELD string VALUE(rbounce.val.expr) STRETCH(1,0);
    rbounce.chmenu.expr;
}


dbound.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(dbound.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(dbound.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(dbound.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

dbound.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    BUTTON toggle LOOKTEXT(check,"Displace Bound") VALUE(tdbound.val.expr)
		SIZE(1.5, 0);
    FIELD string VALUE(dbound.val.expr) STRETCH(1,0);
    dbound.chmenu.expr;
}

preinclude.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Pre-Include") SIZE (1.5, 0)}
    FIELD string VALUE(preinclude.val) STRETCH(1,0);
    BUTTON push VALUE(preinclude.plus) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}



postinclude.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Post-Include") SIZE (1.5, 0)}
    FIELD string VALUE(postinclude.val) STRETCH(1,0);
    BUTTON push VALUE(postinclude.plus) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


picking.gad = BUTTON toggle LOOKTEXT(check, "Viewport Selecting Enabled")
		VALUE(picking.val) STRETCH(1, 0);



pickscript.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Select Script") SIZE (1.5, 0)}
    FIELD string VALUE(pickscript.val) STRETCH(1,0);
    BUTTON push VALUE(pickscript.plus) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}




shadequality.chmenu = SWITCHER
{
    LOOK(plain) VALUE(shadequality.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(shadequality.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(shadequality.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

shadequality.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    BUTTON toggle LOOKTEXT(check, "Shading Quality") VALUE(tshadequality.val) SIZE(1.5, 0);
    SLIDERFIELD float 0.001 5 VALUE(shadequality.val) STRETCH(1,0);
    shadequality.chmenu;
}


shadowquality.chmenu = SWITCHER
{
    LOOK(plain) VALUE(shadowquality.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(shadowquality.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(shadowquality.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

shadowquality.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Shadow Quality") SIZE (1.5, 0)}
    SLIDERFIELD float 0.001 5 VALUE(shadowquality.val) STRETCH(1,0);
    shadowquality.chmenu;
}


reflectquality.chmenu = SWITCHER
{
    LOOK(plain) VALUE(reflectquality.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(reflectquality.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(reflectquality.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

reflectquality.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Reflection Quality") SIZE (1.5, 0)}
    SLIDERFIELD float 0.001 5 VALUE(reflectquality.val) STRETCH(1,0);
    reflectquality.chmenu;
}


lod.chmenu = SWITCHER
{
    LOOK(plain) VALUE(lod.jive)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(lod.jive)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(lod.jive)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

lod.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Level of Detail") SIZE (1.5, 0)}
    SLIDERFIELD float 0.001 5 VALUE(lod.val) STRETCH(1,0);
    lod.chmenu;
}


blur.gad = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Motion Blur") SIZE(1.5, 0)}
    blur.menu VALUE(blur.menuval)
		LOOKTEXT(select, blur.menuval) STRETCH(1, 0);
}



c.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(c.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(c.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(c.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

c.gad.expr =
{
    LAYOUT(vertical!) STRETCH(1, 0)

    {
	LAYOUT(horizontal!) STRETCH(1, 0)

	{ LOOKTEXT(plain, "Light Color") STRETCH(1, 0)}
	c.chmenu.expr;
    }

    VECTORFIELD(3) string VALUE(c.val.expr) STRETCH(1, 0)
	    LAYOUT(horizontal!);
}


dimmer.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(dimmer.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(dimmer.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(dimmer.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

dimmer.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Dimmer") SIZE (1.5, 0)}
    FIELD string VALUE(dimmer.val.expr) STRETCH(1,0);
    dimmer.chmenu.expr;
}

atten.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(atten.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(atten.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(atten.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

atten.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Attenuation") SIZE (1.5, 0)}
    FIELD string VALUE(atten.val.expr) STRETCH(1,0);
    atten.chmenu.expr;
}


spread.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(spread.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(spread.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(spread.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

spread.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Shadow Softness") SIZE (1.5, 0)}
    FIELD string VALUE(spread.val.expr) STRETCH(1,0);
    spread.chmenu.expr;
}


reflect.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(reflect.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(reflect.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(reflect.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

reflect.gad.expr =
{
    LAYOUT(vertical!) STRETCH(1, 0)

    {
	LAYOUT(horizontal!) STRETCH(1, 0)

	{ LOOKTEXT(plain, "Refl. Map Scale") STRETCH(1, 0)}
	reflect.chmenu.expr;
    }

    VECTORFIELD(2) string VALUE(reflect.val.expr) STRETCH(1, 0)
	    LAYOUT(horizontal!);
}



shadowmask.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Shadow Mask") SIZE (1.5, 0)}
    FIELD string VALUE(shadowmask.val.expr) STRETCH(1,0);
}


autogen.gad.expr = BUTTON toggle LOOKTEXT(check, "Auto-Generate Depth Map")
		     VALUE(autogen.val.expr) STRETCH(1, 0);


depthmap.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Z-Depth Map") SIZE (1.5, 0)}
    FIELD string VALUE(depthmap.val.expr) STRETCH(1,0);
    BUTTON push VALUE(depthmap.plus.expr) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


specmap.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Reflection Map") SIZE (1.5, 0)}
    FIELD string VALUE(specmap.val.expr) STRETCH(1,0);
    BUTTON push VALUE(specmap.plus.expr) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


diffmap.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Diffuse Map") SIZE (1.5, 0)}
    FIELD string VALUE(diffmap.val.expr) STRETCH(1,0);
    BUTTON push VALUE(diffmap.plus.expr) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


projmap.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Projector Map") SIZE (1.5, 0)}
    FIELD string VALUE(projmap.val.expr) STRETCH(1,0);
    BUTTON push VALUE(projmap.plus.expr) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


shader.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Shader") SIZE (1.5, 0)}
    FIELD string VALUE(shader.val.expr) STRETCH(1,0);
    BUTTON push VALUE(shader.plus.expr) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


rishader.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "RMan Shader") SIZE (1.5, 0)}
    FIELD string VALUE(rishader.val.expr) STRETCH(1,0);
    BUTTON push VALUE(rishader.plus.expr) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


genshader.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Generic Shader") SIZE (1.5, 0)}
    FIELD string VALUE(genshader.val.expr) STRETCH(1,0);
    BUTTON push VALUE(genshader.plus.expr) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


fogshader.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Atmosphere") SIZE (1.5, 0)}
    FIELD string VALUE(fogshader.val.expr) STRETCH(1,0);
    BUTTON push VALUE(fogshader.plus.expr) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


projection.gad.expr =
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Projection") SIZE(1.5, 0)}
    projection.menu.expr VALUE(projection.menuval.expr)
	     LOOKTEXT(select, projection.menuval.expr) STRETCH(1, 0);
}


orthowidth.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(orthowidth.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(orthowidth.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(orthowidth.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

orthowidth.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Ortho Width") SIZE (1.5, 0)}
    FIELD string VALUE(orthowidth.val.expr) STRETCH(1,0);
    orthowidth.chmenu.expr;
}


focal.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(focal.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(focal.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(focal.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

focal.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Focal Length") SIZE (1.5, 0)}
    FIELD string VALUE(focal.val.expr) STRETCH(1,0);
    focal.chmenu.expr;
}


aperture.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(aperture.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(aperture.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(aperture.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

aperture.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Aperture") SIZE (1.5, 0)}
    FIELD string VALUE(aperture.val.expr) STRETCH(1,0);
    aperture.chmenu.expr;
}


shutter.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(shutter.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(shutter.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(shutter.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

shutter.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Shutter Speed") SIZE (1.5, 0)}
    FIELD string VALUE(shutter.val.expr) STRETCH(1,0);
    shutter.chmenu.expr;
}


near.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(near.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(near.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(near.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

near.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Near") SIZE (1.5, 0)}
    FIELD string VALUE(near.val.expr) STRETCH(1,0);
    near.chmenu.expr;
}


far.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(far.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(far.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(far.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

far.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Far") SIZE (1.5, 0)}
    FIELD string VALUE(far.val.expr) STRETCH(1,0);
    far.chmenu.expr;
}


curvature.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(curvature.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(curvature.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(curvature.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

curvature.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Lens Curvature") SIZE (1.5, 0)}
    FIELD string VALUE(curvature.val.expr) STRETCH(1,0);
    curvature.chmenu.expr;
}


fstop.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(fstop.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(fstop.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(fstop.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

fstop.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "F-Stop") SIZE (1.5, 0)}
    FIELD string VALUE(fstop.val.expr) STRETCH(1,0);
    fstop.chmenu.expr;
}


focus.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(focus.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(focus.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(focus.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

focus.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Focus") SIZE (1.5, 0)}
    FIELD string VALUE(focus.val.expr) STRETCH(1,0);
    focus.chmenu.expr;
}

resmenu.gad.expr =
{
    resmenu.menu.expr VALUE(resmenu.menuval.expr) LOOK(arrowright) SIZE(0.25, 0.25);
}



res.gad.expr =
{
    LAYOUT(horizontal!) STRETCH(1, 0)

    { LOOKTEXT(plain, "Resolution") SIZE(1.5, 0)}

    VECTORFIELD(2) string VALUE(res.val.expr) STRETCH(1, 0)
	    LAYOUT(horizontal!);
    resmenu.gad.expr;
}



aspect.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Pixel Aspect") SIZE (1.5, 0)}
    FIELD string VALUE(aspect.val.expr) STRETCH(1,0);
}


xOrd.gad.expr =
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Transform Order") SIZE(1.5, 0)}
    xOrd.menu.expr VALUE(xOrd.menuval.expr)
	     LOOKTEXT(select, xOrd.menuval.expr) STRETCH(1, 0);
}


rOrd.gad.expr =
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Rotate Order") SIZE(1.5, 0)}
    rOrd.menu.expr VALUE(rOrd.menuval.expr)
	     LOOKTEXT(select, rOrd.menuval.expr) STRETCH(1, 0);
}


t.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(t.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(t.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(t.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

t.gad.expr =
{
    LAYOUT(horizontal!) STRETCH(1, 0)

    { LOOKTEXT(plain, "Translate") SIZE(1, 0)}

    VECTORFIELD(3) string VALUE(t.val.expr) STRETCH(1, 0)
	    LAYOUT(horizontal!);
    t.chmenu.expr;
}


r.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(r.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(r.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(r.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

r.gad.expr =
{
    LAYOUT(horizontal!) STRETCH(1, 0)

    { LOOKTEXT(plain, "Rotation") SIZE(1, 0)}

    VECTORFIELD(3) string VALUE(r.val.expr) STRETCH(1, 0)
	    LAYOUT(horizontal!);
    r.chmenu.expr;
}

pathobj.gad.expr =
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Path Object") SIZE(1.5, 0)}
    pathobj.menu.expr VALUE(pathobj.menuval.expr)
	     LOOKTEXT(select, pathobj.menuval.expr) STRETCH(1, 0);
}


pos.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(pos.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(pos.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(pos.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

pos.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Position") SIZE (1.5, 0)}
    FIELD string VALUE(pos.val.expr) STRETCH(1,0);
    pos.chmenu.expr;
}



preinclude.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Pre-Include") SIZE (1.5, 0)}
    FIELD string VALUE(preinclude.val.expr) STRETCH(1,0);
    BUTTON push VALUE(preinclude.plus.expr) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}



postinclude.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Post-Include") SIZE (1.5, 0)}
    FIELD string VALUE(postinclude.val.expr) STRETCH(1,0);
    BUTTON push VALUE(postinclude.plus.expr) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}


picking.gad.expr = BUTTON toggle LOOKTEXT(check, "Viewport Selecting Enabled")
		     VALUE(picking.val.expr) STRETCH(1, 0);



pickscript.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Select Script") SIZE (1.5, 0)}
    FIELD string VALUE(pickscript.val.expr) STRETCH(1,0);
    BUTTON push VALUE(pickscript.plus.expr) LOOKICON(DialogBox, bevel)
	    SIZE(0.25, 0.25);
}

shadequality.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(shadequality.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(shadequality.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(shadequality.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

shadequality.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    BUTTON toggle LOOKTEXT(check, "Shading Quality") VALUE(tshadequality.val.expr) SIZE(1.5, 0);
    FIELD string VALUE(shadequality.val.expr) STRETCH(1,0);
    shadequality.chmenu.expr;
}


shadowquality.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(shadowquality.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(shadowquality.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(shadowquality.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

shadowquality.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Shadow Quality") SIZE (1.5, 0)}
    FIELD string VALUE(shadowquality.val.expr) STRETCH(1,0);
    shadowquality.chmenu.expr;
}


reflectquality.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(reflectquality.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(reflectquality.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(reflectquality.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

reflectquality.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Reflection Quality") SIZE (1.5, 0)}
    FIELD string VALUE(reflectquality.val.expr) STRETCH(1,0);
    reflectquality.chmenu.expr;
}


lod.chmenu.expr = SWITCHER
{
    LOOK(plain) VALUE(lod.jive.expr)

    BUTTON push SENDS(4) HELP("Channel Button (click to add channels)") VALUE(lod.jive.expr)
	    LOOKICON(PSI_ChannelNone, bevel) SIZE(0.245, 0.245);
    BUTTON push SENDS(1) HELP("Channel Button (click to edit channels, alt-click to delete them)") VALUE(lod.jive.expr)
	    LOOKICON(PSI_Channel, bevel) SIZE(0.245, 0.245);
}

lod.gad.expr = 
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Level of Detail") SIZE (1.5, 0)}
    FIELD string VALUE(lod.val.expr) STRETCH(1,0);
    lod.chmenu.expr;
}


blur.gad.expr =
{
    LAYOUT(horizontal) STRETCH(1, 0)

    { LOOKTEXT(plain, "Motion Blur") SIZE(1.5, 0)}
    blur.menu.expr VALUE(blur.menuval.expr)
	     LOOKTEXT(select, blur.menuval.expr) STRETCH(1, 0);
}

pages.gad =
{
    LAYOUT(vertical) STRETCH(1, 0)
    { LOOK(none) SIZE(0, 0.05) }	# Spacer

    BUTTONSTRIP radio
    {
	LAYOUT(horizontal!) MARGIN(0, 0) LOOK(none) STRETCH(1, 0)
	VALUE(pagenum.val)
	BUTTON push LAYOUT(horizontal!) LOOKTEXT(folder, "Transform & Light")
			STRETCH(1, 0);
	BUTTON push LAYOUT(horizontal!)	LOOKTEXT(folder, "Shading")
			STRETCH(1, 0);
	BUTTON push LAYOUT(horizontal!) LOOKTEXT(folder, "Viewing")
			STRETCH(1, 0);
	BUTTON push LAYOUT(horizontal!) LOOKTEXT(folder, "Render")
			STRETCH(1, 0);
	BUTTON push LAYOUT(horizontal!) LOOKTEXT(folder, "Misc")
			STRETCH(1, 0);
    }
    {
	LAYOUT(vertical) LOOK(tabdialog) STRETCH(1, 0) MARGIN(0.05, 0)
	{ SIZE(0, 0.05) }

	SWITCHER
	{
	    LOOK(plain) STRETCH(1, 0) LAYOUT(overlap!)
	    VALUE(pagenum.val)
	    {
		LAYOUT(vertical) MARGIN(0, 0.025) STRETCH(1, 0)
		xOrd.gad;
		rOrd.gad;
		t.gad;
		r.gad;
		pathobj.gad;
		pos.gad;
		c.gad;
		dimmer.gad;
		atten.gad;
		spread.gad;
		reflect.gad;
		shadowmask.gad;
	    }
	    {
		LAYOUT(vertical) MARGIN(0, 0.025) STRETCH(1, 0)
		autogen.gad;
		depthmap.gad;
		specmap.gad;
		diffmap.gad;
		projmap.gad;
		shader.gad;
		rishader.gad;
		#genshader.gad;
		fogshader.gad;
	    }
	    {
		LAYOUT(vertical) MARGIN(0, 0.025) STRETCH(1, 0)
		projection.gad;
		orthowidth.gad;
		res.gad;
		aspect.gad;
		focal.gad;
		aperture.gad;
		shutter.gad;
		near.gad;
		far.gad;
		focus.gad;
		fstop.gad;
		curvature.gad;
	    }
	    {
		LAYOUT(vertical) MARGIN(0, 0.025) STRETCH(1, 0)
		blur.gad;
		display.gad;
		matte.gad;
		phantom.gad;
		rbounce.gad;
		dbound.gad;
		shadequality.gad;
		shadowquality.gad;
		reflectquality.gad;
		lod.gad;
		preinclude.gad;
		postinclude.gad;
	    }
	    {
		LAYOUT(vertical) MARGIN(0, 0.025) STRETCH(1, 0)
		picking.gad;
		pickscript.gad;
	    }
	}
    }
}

pages.gad.expr =
{
    LAYOUT(vertical) STRETCH(1, 0)
    { LOOK(none) SIZE(0, 0.05) }	# Spacer

    BUTTONSTRIP radio
    {
	LAYOUT(horizontal!) MARGIN(0, 0) LOOK(none) STRETCH(1, 0)
	VALUE(pagenum.val)
	BUTTON push LAYOUT(horizontal!) LOOKTEXT(folder, "Transform & Light")
			STRETCH(1, 0);
	BUTTON push LAYOUT(horizontal!)	LOOKTEXT(folder, "Shading")
			STRETCH(1, 0);
	BUTTON push LAYOUT(horizontal!) LOOKTEXT(folder, "Viewing")
			STRETCH(1, 0);
	BUTTON push LAYOUT(horizontal!) LOOKTEXT(folder, "Render")
			STRETCH(1, 0);
	BUTTON push LAYOUT(horizontal!) LOOKTEXT(folder, "Misc")
			STRETCH(1, 0);
    }
    {
	LAYOUT(vertical) LOOK(tabdialog) STRETCH(1, 0) MARGIN(0.05, 0)
	{ SIZE(0, 0.05) }

	SWITCHER
	{
	    LOOK(plain) STRETCH(1, 0) LAYOUT(overlap!)
	    VALUE(pagenum.val)
	    {
		LAYOUT(vertical) MARGIN(0, 0.025) STRETCH(1, 0)
		xOrd.gad.expr;
		rOrd.gad.expr;
		t.gad.expr;
		r.gad.expr;
		pathobj.gad.expr;
		pos.gad.expr;
		c.gad.expr;
		dimmer.gad.expr;
		atten.gad.expr;
		spread.gad.expr;
		reflect.gad.expr;
		shadowmask.gad.expr;
	    }
	    {
		LAYOUT(vertical) MARGIN(0, 0.025) STRETCH(1, 0)
		autogen.gad.expr;
		depthmap.gad.expr;
		specmap.gad.expr;
		diffmap.gad.expr;
		projmap.gad.expr;
		shader.gad.expr;
		rishader.gad.expr;
		#genshader.gad.expr;
		fogshader.gad.expr;
	    }
	    {
		LAYOUT(vertical) MARGIN(0, 0.025) STRETCH(1, 0)
		projection.gad.expr;
		orthowidth.gad.expr;
		res.gad.expr;
		aspect.gad.expr;
		focal.gad.expr;
		aperture.gad.expr;
		shutter.gad.expr;
		near.gad.expr;
		far.gad.expr;
		focus.gad.expr;
		fstop.gad.expr;
		curvature.gad.expr;
	    }
	    {
		LAYOUT(vertical) MARGIN(0, 0.025) STRETCH(1, 0)
		blur.gad.expr;
		display.gad.expr;
		matte.gad.expr;
		phantom.gad.expr;
		rbounce.gad.expr;
		dbound.gad.expr;
		shadequality.gad.expr;
		shadowquality.gad.expr;
		reflectquality.gad.expr;
		lod.gad.expr;
		preinclude.gad.expr;
		postinclude.gad.expr;
	    }
	    {
		LAYOUT(vertical) MARGIN(0, 0.025) STRETCH(1, 0)
		picking.gad.expr;
		pickscript.gad.expr;
	    }
	}
    }
}

dialog_norm.gad = 
{
    LAYOUT(vertical!) MARGIN(0, 0.025) STRETCH(0, 0) LOOK(plain)
    { LOOK(underline) SIZE(4, 0.01) STRETCH(0, 0) }

    pages.gad;
}

dialog_expr.gad = 
{
    LAYOUT(vertical!) MARGIN(0, 0.025) STRETCH(0, 0) LOOK(plain)
    { LOOK(underline) SIZE(4, 0.01) STRETCH(0, 0) }

    pages.gad.expr;
}


switcher = SWITCHER
{
    VALUE(switcherval) LOOK(plain) LAYOUT(overlap!) STRETCH(0, 0)

    dialog_norm.gad;
    dialog_expr.gad;
}

preset.menu = BUTTONSTRIP normal
{
    VALUE(PSI_PRESET) LAYOUT(vertical!) MARGIN(0.01, 0.0) FULLOVERLAY

    BUTTON push LOOKTEXT(pushdown, "Load ...");
    BUTTON push LOOKTEXT(pushdown, "Save as ...");
    { LOOK(line) SIZE(0, 0.02) DISABLED }
    BUTTON push LOOKTEXT(pushdown, "Defaults");
}

dialog = OPENNOTIFIER
{
    LAYOUT(vertical>) MARGIN(0, 0.05) LOOK(plain) VALUE(open.val)
    
    {
	LAYOUT(horizontal%) MARGIN(0, 0.05) STRETCH(1, 0) LOOK(plain)

	BUTTON toggle LOOKTEXT(check, "Expressions") VALUE(switcherval);
	{ LAYOUT(horizontal) STRETCH(1, 0) }
	MENUBUTTON preset.menu LOOKTEXT(popdown, "Presets") VALUE(PSI_PRESET);
    }

    switcher;
}
SF_SIZES;
