/**
  * @param mixed $value
  * @return $this
  */
 public function setValue($value)
 {
     if (is_string($value)) {
         $this->data = new GridState_Data(json_decode($value, true));
     }
     parent::setValue($value);
     return $this;
 }
 /**
  * Note: Use {@link getDateField()} and {@link getTimeField()}
  * to set field-specific config options.
  *
  * @param string $name
  * @param mixed $val
  * @return $this
  */
 public function setConfig($name, $val)
 {
     $this->config[$name] = $val;
     if ($name == 'usertimezone') {
         $this->timezoneField->setValue($val);
         $this->setValue($this->dataValue());
     }
     return $this;
 }