protected function _oneElement(ffOneElement $item)
 {
     $routeForNameParam = $this->_getRouteForNameParam();
     $routeForIdParam = $this->_getRouteForIdParam();
     switch ($item->getType()) {
         case ffOneElement::TYPE_TABLE_START:
             $this->_getPrintercomponentfactory()->createPrinterElementTableStart()->printElement($item, $routeForNameParam, $routeForIdParam);
             $this->_getOptionsPrinterDataBoxGenerator()->addPrintedElement(ffOneElement::TYPE_TABLE_START);
             break;
         case ffOneElement::TYPE_TABLE_END:
             $this->_getPrintercomponentfactory()->createPrinterElementTableEnd()->printElement($item, $routeForNameParam, $routeForIdParam);
             $this->_getOptionsPrinterDataBoxGenerator()->addPrintedElement(ffOneElement::TYPE_TABLE_END);
             break;
         case ffOneElement::TYPE_TABLE_DATA_START:
             $this->_getPrintercomponentfactory()->createPrinterElementTableDataStart()->printElement($item, $routeForNameParam, $routeForIdParam);
             $this->_getOptionsPrinterDataBoxGenerator()->addPrintedElement(ffOneElement::TYPE_TABLE_DATA_START);
             break;
         case ffOneElement::TYPE_TABLE_DATA_END:
             $this->_getPrintercomponentfactory()->createPrinterElementTableDataEnd()->printElement($item, $routeForNameParam, $routeForIdParam);
             $this->_getOptionsPrinterDataBoxGenerator()->addPrintedElement(ffOneElement::TYPE_TABLE_DATA_END);
             break;
         case ffOneElement::TYPE_NEW_LINE:
             $this->_getPrintercomponentfactory()->createPrinterElementNewLine()->printElement($item, $routeForNameParam, $routeForIdParam);
             $this->_getOptionsPrinterDataBoxGenerator()->addPrintedElement(ffOneElement::TYPE_NEW_LINE);
             break;
         case ffOneElement::TYPE_BUTTON:
             $this->_getPrintercomponentfactory()->createPrinterElementButton()->printElement($item, $routeForNameParam, $routeForIdParam);
             $this->_getOptionsPrinterDataBoxGenerator()->addPrintedElement(ffOneElement::TYPE_BUTTON);
             break;
         case ffOneElement::TYPE_BUTTON_PRIMARY:
             $this->_getPrintercomponentfactory()->createPrinterElementButtonPrimary()->printElement($item, $routeForNameParam, $routeForIdParam);
             $this->_getOptionsPrinterDataBoxGenerator()->addPrintedElement(ffOneElement::TYPE_BUTTON_PRIMARY);
             break;
         case ffOneElement::TYPE_HTML:
             $this->_getPrintercomponentfactory()->createPrinterElementHtml()->printElement($item, $routeForNameParam, $routeForIdParam);
             $this->_getOptionsPrinterDataBoxGenerator()->addPrintedElement(ffOneElement::TYPE_HTML);
             break;
         case ffOneElement::TYPE_HEADING:
             $this->_getPrintercomponentfactory()->createPrinterElementHeading()->printElement($item, $routeForNameParam, $routeForIdParam);
             $this->_getOptionsPrinterDataBoxGenerator()->addPrintedElement(ffOneElement::TYPE_HEADING);
             break;
         case ffOneElement::TYPE_PARAGRAPH:
             $this->_getPrintercomponentfactory()->createPrinterElementParagraph()->printElement($item, $routeForNameParam, $routeForIdParam);
             $this->_getOptionsPrinterDataBoxGenerator()->addPrintedElement(ffOneElement::TYPE_PARAGRAPH);
             break;
         case ffOneElement::TYPE_DESCRIPTION:
             $this->_getPrintercomponentfactory()->createPrinterElementDescription()->printElement($item, $routeForNameParam, $routeForIdParam);
             $this->_getOptionsPrinterDataBoxGenerator()->addPrintedElement(ffOneElement::TYPE_DESCRIPTION);
             break;
         case ffOneElement::TYPE_SECTION_START:
             $this->_getPrintercomponentfactory()->createPrinterElementSectionStart()->printElement($item, $routeForNameParam, $routeForIdParam);
             $this->_getOptionsPrinterDataBoxGenerator()->addPrintedElement(ffOneElement::TYPE_SECTION_START);
             break;
         case ffOneElement::TYPE_SECTION_END:
             $this->_getPrintercomponentfactory()->createPrinterElementSectionEnd()->printElement($item, $routeForNameParam, $routeForIdParam);
             $this->_getOptionsPrinterDataBoxGenerator()->addPrintedElement(ffOneElement::TYPE_SECTION_END);
             break;
         case ffOneElement::TYPE_TOGGLE_BOX_START:
             $this->_getPrintercomponentfactory()->createPrinterElementToggleBoxStart()->printElement($item, $routeForNameParam, $routeForIdParam);
             $this->_getOptionsPrinterDataBoxGenerator()->addPrintedElement(ffOneElement::TYPE_TOGGLE_BOX_START);
             break;
         case ffOneElement::TYPE_TOGGLE_BOX_END:
             $this->_getPrintercomponentfactory()->createPrinterElementToggleBoxEnd()->printElement($item, $routeForNameParam, $routeForIdParam);
             $this->_getOptionsPrinterDataBoxGenerator()->addPrintedElement(ffOneElement::TYPE_TOGGLE_BOX_END);
             break;
     }
 }
 protected function _oneElement(ffOneElement $item)
 {
     $this->_dataBoxGenerator->addPrintedElement($item->getType());
     $newItem = $this->_getNewItem($item);
     $newItem['overall_type'] = 'element';
     $newItem['params'] = $item->getParams();
     $newItem['title'] = $item->getTitle();
     $this->_dataRoute[$this->_dataRouteDepth]['childs'][] =& $newItem;
 }