original_string: public function makeFormWidget($class, $fieldConfig = [], $widgetConfig = [])
      {
          $controller = property_exists($this, 'controller') && $this->controller
              ? $this->controller
              : $this;
  
          if (!class_exists($class)) {
              throw new SystemException(Lang::get('backend::lang.widget.not_registered', [
                  'name' => $class
              ]));
          }
  
          if (is_string($fieldConfig)) {
              $fieldConfig = ['name' => $fieldConfig];
          }
  
          if (is_array($fieldConfig)) {
              $formField = new FormField(
                  array_get($fieldConfig, 'name'),
                  array_get($fieldConfig, 'label')
              );
              $formField->displayAs('widget', $fieldConfig);
          }
          else {
              $formField = $fieldConfig;
          }
  
          return new $class($controller, $formField, $widgetConfig);
      }
code: public function makeFormWidget($class, $fieldConfig = [], $widgetConfig = [])
      {
          $controller = property_exists($this, 'controller') && $this->controller
              ? $this->controller
              : $this;
  
          if (!class_exists($class)) {
              throw new SystemException(Lang::get('backend::lang.widget.not_registered', [
                  'name' => $class
              ]));
          }
  
          if (is_string($fieldConfig)) {
              $fieldConfig = ['name' => $fieldConfig];
          }
  
          if (is_array($fieldConfig)) {
              $formField = new FormField(
                  array_get($fieldConfig, 'name'),
                  array_get($fieldConfig, 'label')
              );
              $formField->displayAs('widget', $fieldConfig);
          }
          else {
              $formField = $fieldConfig;
          }
  
          return new $class($controller, $formField, $widgetConfig);
      }
code_tokens: public function makeFormWidget ( $ class , $ fieldConfig = [ ] , $ widgetConfig = [ ] ) { $ controller = property_exists ( $ this , 'controller' ) && $ this -> controller ? $ this -> controller : $ this ; if ( ! class_exists ( $ class ) ) { throw new SystemException ( Lang :: get ( 'backend::lang.widget.not_registered' , [ 'name' => $ class ] ) ) ; } if ( is_string ( $ fieldConfig ) ) { $ fieldConfig = [ 'name' => $ fieldConfig ] ; } if ( is_array ( $ fieldConfig ) ) { $ formField = new FormField ( array_get ( $ fieldConfig , 'name' ) , array_get ( $ fieldConfig , 'label' ) ) ; $ formField -> displayAs ( 'widget' , $ fieldConfig ) ; } else { $ formField = $ fieldConfig ; } return new $ class ( $ controller , $ formField , $ widgetConfig ) ; }
docstring: Makes a form widget object with the supplied form field and widget configuration.
  @param string $class Widget class name
  @param mixed $fieldConfig A field name, an array of config or a FormField object.
  @param array $widgetConfig An array of config.
  @return \Backend\Classes\FormWidgetBase The widget object
docstring_tokens: Makes a form widget object with the supplied form field and widget configuration .