#!/bin/flua

-- a flua program to control xdesktopwindows 
-- 12-18-04

w = Window{320,280,"xdesktopwaves control panel"}

rain = Light_Button{10,10,105,20,"Rain"}
storm = Light_Button{10,40,105,20,"Storm"}
color = Light_Button{10,70,105,20,"Color Theme"}
quality = Light_Button{10,100,105,20,"Quality"}
viscosity = Light_Button{10,130,105,20,"Viscosity"}
opaque = Light_Button{10,160,105,20,"Opaque"}

rainamount = Value_Slider{120,10,100,20;
   type=Slidertype.horizontal, align=Align.left,
   minimum=1, maximum=10, step=1, value=5}

stormamount = Value_Slider{120,40,100,20;
   type=Slidertype.horizontal, align=Align.left,
   minimum=1, maximum=10, step=1, value=5}

coloramount = Value_Slider{120,70,100,20;
   type=Slidertype.horizontal, align=Align.left,
   minimum=0, maximum=9, step=1, value=0}

qualityamount = Value_Slider{120,100,100,20;
   type=Slidertype.horizontal, align=Align.left,
   minimum=0, maximum=9, step=1, value=5}

viscosityamount = Value_Slider{120,130,100,20;
   type=Slidertype.horizontal, align=Align.left,
   minimum=1, maximum=5, step=1, value=3}

doit = Button{10,200,100,30,"Do It"}
function doit:callback()
   runline.value = "xdesktopwaves"
   if rain.value then
      runline.value = runline.value .. " -rain " .. rainamount.value
   end
   if storm.value then
      runline.value = runline.value .. " -storm " .. stormamount.value
   end
   if color.value then
      runline.value = runline.value .. " -c " .. coloramount.value
   end
   if quality.value then
      runline.value = runline.value .. " -q " .. qualityamount.value
   end
   if viscosity.value then
      runline.value = runline.value .. " -vs " .. viscosityamount.value
   end
   if opaque.value then
      runline.value = runline.value .. " -o "
   end
   runline.value = "/opt/xdesktopwaves/" .. runline.value .. " &"
   execute(runline.value)
end

runline = Output{10,250,300,20}

doit = Button{130,200,100,30,"Stop It"}
function doit:callback()
   runline.value = "/opt/xdesktopwaves/xdesktopwaves -end &"
   execute(runline.value)
end

w:end_layout()
w:show()
