public function renderControls($parent)
{
if (!($parent instanceof Nette\Forms\Container || $parent instanceof Nette\Forms\ControlGroup)) {
throw new Nette\InvalidArgumentException('Argument must be Nette\\Forms\\Container or Nette\\Forms\\ControlGroup instance.');
}
$container = $this->getWrapper('controls container');
$buttons = NULL;
foreach ($parent->getControls() as $control) {
if ($control->getOption('rendered') || $control->getOption('type') === 'hidden' || $control->getForm(FALSE) !== $this->form) {
// skip
} elseif ($control->getOption('type') === 'button') {
$buttons[] = $control;
} else {
if ($buttons) {
$container->addHtml($this->renderPairMulti($buttons));
$buttons = NULL;
}
$container->addHtml($this->renderPair($control));
}
}
if ($buttons) {
$container->addHtml($this->renderPairMulti($buttons));
}
$s = '';
if (count($container)) {
$s .= "\n" . $container . "\n";
}
return $s;
}