public function testRemoveButton() { $this->testAddButton(); $this->template->removeButton('1'); $buttons = $this->buttonList->getItems()[0]; $this->assertNotContains('1', array_keys($buttons)); }
/** * Check if there's anything to display in footer * * @return boolean */ public function hasFooterButtons() { foreach ($this->buttonList->getItems() as $buttons) { foreach ($buttons as $data) { if (isset($data['region']) && 'footer' == $data['region']) { return true; } } } return false; }
/** * Get Add New Template button html * * @return string */ protected function getAddButtonHtml() { $out = ''; foreach ($this->buttonList->getItems() as $buttons) { /** @var \Magento\Backend\Block\Widget\Button\Item $item */ foreach ($buttons as $item) { $out .= $this->getChildHtml($item->getButtonKey()); } } return $out; }
/** * @param ToolbarContext $toolbar * @param AbstractBlock $context * @param ButtonList $buttonList * @return array */ public function beforePushButtons(ToolbarContext $toolbar, \Magento\Framework\View\Element\AbstractBlock $context, \Magento\Backend\Block\Widget\Button\ButtonList $buttonList) { if (!$context instanceof \Magento\Sales\Block\Adminhtml\Order\View) { return [$context, $buttonList]; } $buttonList->update('order_edit', 'class', 'edit'); $buttonList->update('order_invoice', 'class', 'invoice primary'); $buttonList->update('order_invoice', 'sort_order', (count($buttonList->getItems()) + 1) * 10); $buttonList->add('order_review', ['label' => __('Review'), 'onclick' => 'setLocation(\'' . $context->getUrl('sales/*/review') . '\')', 'class' => 'review']); $buttonList->remove('order_hold'); $buttonList->remove('send_notification'); return [$context, $buttonList]; }
/** * {@inheritdoc} */ public function pushButtons(\Magento\Framework\View\Element\AbstractBlock $context, \Magento\Backend\Block\Widget\Button\ButtonList $buttonList) { foreach ($buttonList->getItems() as $buttons) { /** @var \Magento\Backend\Block\Widget\Button\Item $item */ foreach ($buttons as $item) { $containerName = $context->getNameInLayout() . '-' . $item->getButtonKey(); $container = $this->createContainer($context->getLayout(), $containerName, $item); if ($item->hasData('name')) { $item->setData('element_name', $item->getName()); } if ($container) { $container->setContext($context); $toolbar = $this->getToolbar($context, $item->getRegion()); $toolbar->setChild($item->getButtonKey(), $container); } } } }