function color_chooser(){
  
  var chooserdiv;
  var chooserpane;
  var colors;
  var slider_position;
  var slider_max;
  var down;
  var default_color;
  
  this.a=a;
  this.init=init;
  this.setColor=setColor;
  this.set_slider=set_slider;
  
  
  function init(chooserdivi,colorsi,default_colorx){
    chooserdiv=chooserdivi;
    colors=colorsi;
    default_color=default_colorx;
    down=false;
    chooserpane=document.createElement('div');
    chooserview=document.createElement('input');
    slider=document.createElement('div');
    slider.className='slider';
    chooserpane.className='pane';
    chooserview.name='rgb';
    chooserview.className='view';
    create_chooser();
  }
  function create_chooser(){
  //  alert(default_color);
      for(i=0;i<colors.length;i++){
      var colorx=document.createElement('div');
      c='rgb('+colors[i][0]+','+colors[i][1]+','+colors[i][2]+')';
      if(c==default_color)new_slider_position=colorx;
      colorx.style.backgroundColor=c;
      colorx.className='color';
      colorx.onmousedown=function(){
        if(!chooserx.down)chooserx.set_slider(this);
        chooserx.down=true;

      }
      colorx.onmousemove=function(){
        if(chooserx.down)chooserx.set_slider(this);
      }
      chooserpane.appendChild(colorx);
      }
      document.getElementById('center').onmouseup=function(){
        chooserx.down=false;
      }
      chooserpane.onmouseup=function(){
        chooserx.down=false;
      }
      slider.onfocus=function(){return false}
      //alert(slider_position);
      set_slider(new_slider_position);  
      chooserdiv.appendChild(chooserpane);
      chooserdiv.appendChild(chooserview);
      
  }

  
  function set_slider(new_slider_position){
    if(slider_position)slider_position.removeChild(slider);
    new_slider_position.appendChild(slider);
    slider_position=new_slider_position;
    setColor(slider_position);
  }
  
  function setColor(node){
    
    chooserview.style.backgroundColor=node.style.backgroundColor;
    chooserview.value=node.style.backgroundColor;
  }
  function a(){
    alert('ok');
  }
  
 
}