function RGB(r,g,b){ return (0xff000000|(r<<16)|(g<<8)|(b)); }

var g_font = gdi.Font("Tahoma", 12, 0);
var g_drag = 0;

function on_paint(gr){
	gr.SetTextRenderingHint(5);
	var ww = window.Width;
	var wh = window.Height;
	var volume = fb.Volume;
	var pos = window.Width * ((100+volume)/100);
	var txt = (Math.ceil(volume)) + "dB";
	gr.FillGradRect(  0, 0,    pos, wh, 90, RGB(240,240,240), RGB(100,230,100));
	gr.FillGradRect(pos, 0, ww-pos, wh, 90, RGB(240,240,240), RGB(190,190,190));
	gr.DrawString(txt, g_font, RGB(64,64,128), 0, 0, ww, wh, 0x11005000);
	gr.DrawRect(0,0, ww-1, wh-1, 1.0, RGB(150,150,150));
}
function on_mouse_lbtn_down(x,y){
	g_drag = 1;
}
function on_mouse_lbtn_up(x,y){
	on_mouse_move(x,y);
	g_drag = 0;
}
function on_mouse_move(x,y){
	if(g_drag){
		var v = x / window.Width;
		v = (v<0) ? 0 : (v<1) ? v : 1;
		v = -100 * (1-v);
		if(fb.Volume != v)
			fb.Volume = v;
	}
}
function on_mouse_wheel(delta){
	if(delta>0)
		fb.VolumeUp();
	else
		fb.VolumeDown();
}
function on_volume_change(val){
	window.Repaint();
}
//EOF
