2c2 < index 8af2040..34ccd27 100644 --- > index d48d0b7..254a5f9 100644 5,6c5,6 < @@ -588,4 +588,11 @@ public static function postLoad(EntityStorageControllerInterface $storage_contro < public function preSaveRevision(EntityStorageControllerInterface $storage_controller, \stdClass $record) { --- > @@ -516,4 +516,11 @@ public function isTranslatable() { > return !empty($bundles[$this->bundle()]['translatable']); 10c10 < + * {@inheritdoc} --- > + * Implements \Drupal\Core\Entity\EntityInterface::getOperationLinks(). 18c18 < index d292a73..35f9bc6 100644 --- > index 9697648..befc3c5 100644 21,23c21,23 < @@ -589,4 +589,12 @@ public static function postDelete(EntityStorageControllerInterface $storage_cont < */ < public static function postLoad(EntityStorageControllerInterface $storage_controller, array $entities) { --- > @@ -523,4 +523,12 @@ public function onChange($property_name) { > public function isTranslatable() { > return $this->decorated->isTranslatable(); 35c35 < index b8fe82b..482493d 100644 --- > index 57fe186..1324b73 100644 38c38 < @@ -323,4 +323,11 @@ public function getNGEntity(); --- > @@ -227,4 +227,11 @@ public function getNGEntity(); 51c51 < index 6efda89..6a219bd 100644 --- > index b1bade0..c30bc66 100644 54,55c54 < @@ -224,4 +224,12 @@ public function submit($form, &$form_state) { < * @see \Drupal\block\BlockBase::submit() --- > @@ -515,4 +515,11 @@ public function build() { 57,58c56,57 < public function blockSubmit($form, &$form_state) {} < + --- > abstract protected function blockBuild(); > 60c59 < + * {@inheritdoc} --- > + * Implements \Drupal\block\BlockInterface::getOperationLinks(). 84c83 < index 6a5a2ed..18c6223 100644 --- > index 5dd981f..99606bd 100644 87,89c86,88 < @@ -174,6 +174,7 @@ public function buildForm(array $form, array &$form_state) { < 'no_striping' => TRUE, < ), --- > @@ -159,6 +159,7 @@ public function buildForm(array $form, array &$form_state) { > '#title' => t('Region for @block block', array('@block' => $info['admin_label'])), > '#options' => $this->regions, 91,97c90,96 < + < $form['blocks'][$region]['title'] = array( < '#markup' => $region != BLOCK_REGION_NONE ? $title : t('Disabled'), < '#wrapper_attributes' => array( < @@ -190,6 +191,7 @@ public function buildForm(array $form, array &$form_state) { < ), < ), --- > + $links = array(); > $links['configure'] = array( > 'title' => t('configure'), > 'href' => 'admin/structure/block/manage/' . $entity_id . '/configure', > @@ -167,6 +168,7 @@ public function buildForm(array $form, array &$form_state) { > 'title' => t('delete'), > 'href' => 'admin/structure/block/manage/' . $entity_id . '/delete', 99,118c98,101 < + < $form['blocks'][$region . '-message']['message'] = array( < '#markup' => '' . t('No blocks in this region') . '', < '#wrapper_attributes' => array( < @@ -240,6 +242,7 @@ public function buildForm(array $form, array &$form_state) { < 'class' => array('block-weight', 'block-weight-' . $region), < ), < ); < + $links = array(); < $links['configure'] = array( < 'title' => t('configure'), < 'href' => 'admin/structure/block/manage/' . $entity_id . '/configure', < @@ -248,6 +251,7 @@ public function buildForm(array $form, array &$form_state) { < 'title' => t('delete'), < 'href' => 'admin/structure/block/manage/' . $entity_id . '/delete', < ); < + $links += $entity->getOperationLinks(); < $form['blocks'][$entity_id]['operations'] = array( < '#type' => 'operations', < '#links' => $links, --- > + $links += $entity->getOperationLinks(); > $form['blocks'][$entity_id]['operations'] = array( > '#type' => 'operations', > '#links' => $links, 120c103 < index 1d3cca8..2827275 100644 --- > index fd0498f..fffc152 100644 123,124c106,107 < @@ -172,4 +172,13 @@ public function preSave(EntityStorageControllerInterface $storage_controller) { < $this->set('settings', $this->getPlugin()->getConfig()); --- > @@ -198,4 +198,14 @@ public function getExportProperties() { > return $properties; 128c111 < + * {@inheritdoc} --- > + * Implements \Drupal\Core\Entity\EntityInterface::getOperationLinks(). 135a119 > + 138c122 < index 0e83734..ab6a37a 100644 --- > index 86dcd07..a85495d 100644 141c125 < @@ -31,4 +31,18 @@ public function build() { --- > @@ -31,4 +31,18 @@ protected function blockBuild() { 161c145 < index 8e7879e..722903c 100644 --- > index dd31fe3..8c1cb1d 100644 164c148 < @@ -42,4 +42,18 @@ public function build() { --- > @@ -42,4 +42,18 @@ protected function blockBuild() { 184c168 < index c83e5f7..481bd38 100644 --- > index 5877f28..7e85f7d 100644 187,189c171,173 < @@ -1209,4 +1209,12 @@ public function mergeDefaultDisplaysOptions() { < public function uriRelationships() { < return $this->storage->uriRelationships(); --- > @@ -1134,4 +1134,12 @@ public function setContext($name = NULL, TypedDataInterface $parent = NULL) { > public function onChange($property_name) { > $this->storage->onChange($property_name);