Issue #2029733 by damiankloip, tim.plunkett: Add a getExecutable() method to View.

8.0.x
Alex Pott 2013-07-20 20:32:31 +01:00
parent 1eb378f424
commit 91fbd4b5ca
28 changed files with 79 additions and 76 deletions

View File

@ -120,15 +120,18 @@ class View extends ConfigEntityBase implements ViewStorageInterface {
protected $module = 'views';
/**
* Overrides Drupal\Core\Entity\EntityInterface::get().
* Gets an executable instance for this view.
*
* @return \Drupal\views\ViewExecutable
* A view executable instance.
*/
public function get($property_name, $langcode = NULL) {
public function getExecutable() {
// Ensure that an executable View is available.
if ($property_name == 'executable' && !isset($this->{$property_name})) {
$this->set('executable', Views::executableFactory()->get($this));
if (!isset($this->executable)) {
$this->executable = Views::executableFactory()->get($this);
}
return parent::get($property_name, $langcode);
return $this->executable;
}
/**
@ -274,7 +277,7 @@ class View extends ConfigEntityBase implements ViewStorageInterface {
// We can't use get() here as it will create an ViewExecutable instance if
// there is not already one.
if (isset($this->executable)) {
$executable = $this->get('executable');
$executable = $this->getExecutable();
$executable->initDisplay();
$executable->displayHandlers->addInstanceID($id);
return $executable->displayHandlers->get($id);

View File

@ -83,7 +83,7 @@ class ViewsBlock implements ContainerDerivativeInterface {
if (!$view->status()) {
continue;
}
$executable = $view->get('executable');
$executable = $view->getExecutable();
$executable->initDisplay();
foreach ($executable->displayHandlers as $display) {
// Add a block plugin definition for each block display.

View File

@ -44,7 +44,7 @@ class ViewsExposedFilterBlock implements DerivativeInterface {
if (!$view->status()) {
continue;
}
$executable = $view->get('executable');
$executable = $view->getExecutable();
$executable->initDisplay();
foreach ($executable->displayHandlers as $display) {
if (isset($display) && $display->getOption('exposed_block')) {

View File

@ -847,7 +847,7 @@ abstract class HandlerBase extends PluginBase {
$this->defaultExposeOptions();
}
$form_state['view']->get('executable')->setItem($form_state['display_id'], $form_state['type'], $form_state['id'], $item);
$form_state['view']->getExecutable()->setItem($form_state['display_id'], $form_state['type'], $form_state['id'], $item);
$form_state['view']->addFormToStack($form_state['form_key'], $form_state['display_id'], $form_state['type'], $form_state['id'], TRUE, TRUE);
@ -875,7 +875,7 @@ abstract class HandlerBase extends PluginBase {
}
$override = NULL;
$executable = $form_state['view']->get('executable');
$executable = $form_state['view']->getExecutable();
if ($executable->display_handler->useGroupBy() && !empty($item['group_type'])) {
if (empty($executable->query)) {
$executable->initQuery();
@ -900,7 +900,7 @@ abstract class HandlerBase extends PluginBase {
$handler->unpackOptions($handler->options, $options, NULL, FALSE);
// Store the item back on the view.
$executable = $form_state['view']->get('executable');
$executable = $form_state['view']->getExecutable();
$executable->temporary_options[$type][$form_state['id']] = $handler->options;
// @todo Decide if \Drupal\views_ui\Form\Ajax\ViewsFormBase::getForm() is

View File

@ -426,7 +426,7 @@ abstract class FilterPluginBase extends HandlerBase {
$this->buildGroupOptions();
}
$form_state['view']->get('executable')->setItem($form_state['display_id'], $form_state['type'], $form_state['id'], $item);
$form_state['view']->getExecutable()->setItem($form_state['display_id'], $form_state['type'], $form_state['id'], $item);
$form_state['view']->addFormToStack($form_state['form_key'], $form_state['display_id'], $form_state['type'], $form_state['id'], TRUE, TRUE);
@ -1089,7 +1089,7 @@ abstract class FilterPluginBase extends HandlerBase {
// Add a new row.
$item['group_info']['group_items'][] = array();
$form_state['view']->get('executable')->setItem($form_state['display_id'], $form_state['type'], $form_state['id'], $item);
$form_state['view']->getExecutable()->setItem($form_state['display_id'], $form_state['type'], $form_state['id'], $item);
$form_state['view']->cacheSet();
$form_state['rerender'] = TRUE;

View File

@ -163,7 +163,7 @@ class GroupwiseMax extends RelationshipPluginBase {
protected function getTemporaryView() {
$view = entity_create('view', array('base_table' => $this->definition['base']));
$view->addDisplay('default');
return $view->get('executable');
return $view->getExecutable();
}
/**

View File

@ -63,7 +63,7 @@ abstract class RowPluginBase extends PluginBase {
public function buildOptionsForm(&$form, &$form_state) {
parent::buildOptionsForm($form, $form_state);
if (isset($this->base_table)) {
$executable = $form_state['view']->get('executable');
$executable = $form_state['view']->getExecutable();
// A whole bunch of code to figure out what relationships are valid for
// this item.

View File

@ -694,7 +694,7 @@ abstract class WizardPluginBase extends PluginBase implements WizardInterface {
protected function addDisplays(View $view, $display_options, $form, $form_state) {
// Initialize and store the view executable to get the display plugin
// instances.
$executable = $view->get('executable');
$executable = $view->getExecutable();
// Display: Master
$default_display = $view->newDisplay('default', 'Master', 'default');
@ -1158,7 +1158,7 @@ abstract class WizardPluginBase extends PluginBase implements WizardInterface {
*/
public function validateView(array $form, array &$form_state) {
$view = $this->instantiateView($form, $form_state);
$errors = $view->get('executable')->validate();
$errors = $view->getExecutable()->validate();
if (empty($errors)) {
$this->setValidatedView($form, $form_state, $view);

View File

@ -117,7 +117,7 @@ class DefaultViewsTest extends ViewTestBase {
$views = $controller->loadMultiple();
foreach ($views as $name => $view_storage) {
$view = $view_storage->get('executable');
$view = $view_storage->getExecutable();
$view->initDisplay();
foreach ($view->storage->get('display') as $display_id => $display) {
$view->setDisplay($display_id);

View File

@ -61,7 +61,7 @@ class HandlerAllTest extends HandlerTestBase {
}
$view = entity_create('view', array('base_table' => $base_table));
$view = $view->get('executable');
$view = $view->getExecutable();
// @todo The groupwise relationship is currently broken.
$exclude[] = 'taxonomy_term_data:tid_representative';

View File

@ -201,7 +201,7 @@ class ModuleTest extends ViewUnitTestBase {
// Test $exclude_view parameter.
$this->assertFalse(array_key_exists('archive', views_get_views_as_options(TRUE, 'all', 'archive')), 'View excluded from options based on name');
$this->assertFalse(array_key_exists('archive:default', views_get_views_as_options(FALSE, 'all', 'archive:default')), 'View display excluded from options based on name');
$this->assertFalse(array_key_exists('archive', views_get_views_as_options(TRUE, 'all', $archive->get('executable'))), 'View excluded from options based on object');
$this->assertFalse(array_key_exists('archive', views_get_views_as_options(TRUE, 'all', $archive->getExecutable())), 'View excluded from options based on object');
// Test the $opt_group parameter.
$expected_opt_groups = array();

View File

@ -175,7 +175,7 @@ class ViewStorageTest extends ViewUnitTestBase {
// Ensure the right display_plugin is created/instantiated.
$this->assertEqual($display[$new_id]['display_plugin'], 'page', 'New page display "test" uses the right display plugin.');
$executable = $view->get('executable');
$executable = $view->getExecutable();
$executable->initDisplay();
$this->assertTrue($executable->displayHandlers->get($new_id) instanceof Page, 'New page display "test" uses the right display plugin.');
@ -259,7 +259,7 @@ class ViewStorageTest extends ViewUnitTestBase {
$display = $view->newDisplay('feed');
$this->assertEqual($display, 'feed_1');
$executable = $view->get('executable');
$executable = $view->getExecutable();
$executable->initDisplay();
$this->assertTrue($executable->displayHandlers->get('page_1') instanceof Page);
@ -272,7 +272,7 @@ class ViewStorageTest extends ViewUnitTestBase {
// Tests item related methods().
$view = $this->controller->create(array('base_table' => 'views_test_data'));
$view->addDisplay('default');
$view = $view->get('executable');
$view = $view->getExecutable();
$display_id = 'default';
$expected_items = array();

View File

@ -1740,7 +1740,7 @@ class ViewExecutable {
* data, ID, and UUID.
*/
public function createDuplicate() {
return $this->storage->createDuplicate()->get('executable');
return $this->storage->createDuplicate()->getExecutable();
}
/**

View File

@ -936,7 +936,7 @@ function views_get_applicable_views($type) {
$result = array();
foreach (Drupal::entityManager()->getStorageController('view')->loadMultiple($entity_ids) as $view) {
// Check each display to see if it meets the criteria and is enabled.
$executable = $view->get('executable');
$executable = $view->getExecutable();
$executable->initDisplay();
foreach ($executable->displayHandlers as $id => $handler) {
if (!empty($handler->definition[$type]) && $handler->isEnabled()) {

View File

@ -344,7 +344,7 @@ function views_ui_pre_render_move_argument_options($form) {
function views_ui_standard_display_dropdown(&$form, &$form_state, $section) {
$view = &$form_state['view'];
$display_id = $form_state['display_id'];
$executable = $view->get('executable');
$executable = $view->getExecutable();
$displays = $executable->displayHandlers;
$current_display = $executable->display_handler;

View File

@ -89,7 +89,7 @@ class ViewsUIController implements ControllerInterface {
$fields = array();
$handler_types = ViewExecutable::viewsHandlerTypes();
foreach ($views as $view) {
$executable = $view->get('executable');
$executable = $view->getExecutable();
$executable->initDisplay();
foreach ($executable->displayHandlers as $display_id => $display) {
if ($executable->setDisplay($display_id)) {

View File

@ -60,7 +60,7 @@ class AddItem extends ViewsFormBase {
),
);
$executable = $view->get('executable');
$executable = $view->getExecutable();
$executable->setDisplay($display_id);
$display = &$executable->displayHandlers->get($display_id);

View File

@ -40,7 +40,7 @@ class Analyze extends ViewsFormBase {
$form['#section'] = 'analyze';
$analyzer = Views::analyzer();
$messages = $analyzer->getMessages($view->get('executable'));
$messages = $analyzer->getMessages($view->getExecutable());
$form['analysis'] = array(
'#prefix' => '<div class="form-item">',

View File

@ -63,7 +63,7 @@ class ConfigItem extends ViewsFormBase {
'#attributes' => array('class' => array('scroll')),
),
);
$executable = $view->get('executable');
$executable = $view->getExecutable();
$save_ui_cache = FALSE;
$executable->setDisplay($display_id);
$item = $executable->getItem($display_id, $type, $id);
@ -210,7 +210,7 @@ class ConfigItem extends ViewsFormBase {
}
$override = NULL;
$executable = $form_state['view']->get('executable');
$executable = $form_state['view']->getExecutable();
if ($executable->display_handler->useGroupBy() && !empty($item['group_type'])) {
if (empty($executable->query)) {
$executable->initQuery();
@ -252,7 +252,7 @@ class ConfigItem extends ViewsFormBase {
public function remove(&$form, &$form_state) {
// Store the item back on the view
list($was_defaulted, $is_defaulted) = $form_state['view']->getOverrideValues($form, $form_state);
$executable = $form_state['view']->get('executable');
$executable = $form_state['view']->getExecutable();
// If the display selection was changed toggle the override value.
if ($was_defaulted != $is_defaulted) {
$display = &$executable->displayHandlers->get($form_state['display_id']);

View File

@ -62,7 +62,7 @@ class ConfigItemExtra extends ViewsFormBase {
'#attributes' => array('class' => array('scroll')),
),
);
$executable = $view->get('executable');
$executable = $view->getExecutable();
$executable->setDisplay($display_id);
$item = $executable->getItem($display_id, $type, $id);
@ -110,7 +110,7 @@ class ConfigItemExtra extends ViewsFormBase {
}
// Store the item back on the view
$form_state['view']->get('executable')->setItem($form_state['display_id'], $form_state['type'], $form_state['id'], $item);
$form_state['view']->getExecutable()->setItem($form_state['display_id'], $form_state['type'], $form_state['id'], $item);
// Write to cache
$form_state['view']->cacheSet();

View File

@ -63,7 +63,7 @@ class ConfigItemGroup extends ViewsFormBase {
'#attributes' => array('class' => array('scroll')),
),
);
$executable = $view->get('executable');
$executable = $view->getExecutable();
if (!$executable->setDisplay($display_id)) {
views_ajax_render(t('Invalid display id @display', array('@display' => $display_id)));
}
@ -101,7 +101,7 @@ class ConfigItemGroup extends ViewsFormBase {
$id = $form_state['id'];
$handler = Views::handlerManager($type)->getHandler($item);
$executable = $form_state['view']->get('executable');
$executable = $form_state['view']->getExecutable();
$handler->init($executable, $executable->display_handler, $item);
$handler->submitGroupByForm($form, $form_state);

View File

@ -63,7 +63,7 @@ class Display extends ViewsFormBase {
$display_id = $form_state['display_id'];
$section = $form_state['section'];
$executable = $view->get('executable');
$executable = $view->getExecutable();
$executable->setDisplay($display_id);
$display = &$executable->display[$display_id];
@ -98,7 +98,7 @@ class Display extends ViewsFormBase {
* Overrides \Drupal\views_ui\Form\Ajax\ViewsFormBase::validateForm().
*/
public function validateForm(array &$form, array &$form_state) {
$form_state['view']->get('executable')->displayHandlers->get($form_state['display_id'])->validateOptionsForm($form['options'], $form_state);
$form_state['view']->getExecutable()->displayHandlers->get($form_state['display_id'])->validateOptionsForm($form['options'], $form_state);
if (form_get_errors()) {
$form_state['rerender'] = TRUE;
@ -109,7 +109,7 @@ class Display extends ViewsFormBase {
* Overrides \Drupal\views_ui\Form\Ajax\ViewsFormBase::submitForm().
*/
public function submitForm(array &$form, array &$form_state) {
$form_state['view']->get('executable')->displayHandlers->get($form_state['display_id'])->submitOptionsForm($form['options'], $form_state);
$form_state['view']->getExecutable()->displayHandlers->get($form_state['display_id'])->submitOptionsForm($form['options'], $form_state);
$form_state['view']->cacheSet();
}

View File

@ -53,7 +53,7 @@ class Rearrange extends ViewsFormBase {
$type = $form_state['type'];
$types = ViewExecutable::viewsHandlerTypes();
$executable = $view->get('executable');
$executable = $view->getExecutable();
$executable->setDisplay($display_id);
$display = &$executable->displayHandlers->get($display_id);
$form['#title'] = t('Rearrange @type', array('@type' => $types[$type]['ltitle']));
@ -134,7 +134,7 @@ class Rearrange extends ViewsFormBase {
*/
public function submitForm(array &$form, array &$form_state) {
$types = ViewExecutable::viewsHandlerTypes();
$display = &$form_state['view']->get('executable')->displayHandlers->get($form_state['display_id']);
$display = &$form_state['view']->getExecutable()->displayHandlers->get($form_state['display_id']);
$old_fields = $display->getOption($types[$form_state['type']]['plural']);
$new_fields = $order = array();

View File

@ -38,7 +38,7 @@ class RearrangeFilter extends ViewsFormBase {
$type = 'filter';
$types = ViewExecutable::viewsHandlerTypes();
$executable = $view->get('executable');
$executable = $view->getExecutable();
if (!$executable->setDisplay($display_id)) {
views_ajax_render(t('Invalid display id @display', array('@display' => $display_id)));
}
@ -212,7 +212,7 @@ class RearrangeFilter extends ViewsFormBase {
*/
public function submitForm(array &$form, array &$form_state) {
$types = ViewExecutable::viewsHandlerTypes();
$display = &$form_state['view']->get('executable')->displayHandlers->get($form_state['display_id']);
$display = &$form_state['view']->getExecutable()->displayHandlers->get($form_state['display_id']);
$remember_groups = array();
if (!empty($form_state['view']->form_cache)) {

View File

@ -82,7 +82,7 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
$form_state['no_cache'] = TRUE;
if ($display_id) {
if (!$view->get('executable')->setDisplay($display_id)) {
if (!$view->getExecutable()->setDisplay($display_id)) {
$form['#markup'] = t('Invalid display id @display', array('@display' => $display_id));
return $form;
}
@ -176,8 +176,8 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
$display_title = $this->getDisplayLabel($view, $display_id, FALSE);
// Add a text that the display is disabled.
if ($view->get('executable')->displayHandlers->has($display_id)) {
if (!$view->get('executable')->displayHandlers->get($display_id)->isEnabled()) {
if ($view->getExecutable()->displayHandlers->has($display_id)) {
if (!$view->getExecutable()->displayHandlers->get($display_id)->isEnabled()) {
$form['displays']['settings']['disabled']['#markup'] = t('This display is disabled.');
}
}
@ -194,7 +194,7 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
}
// Mark disabled displays as such.
if ($view->get('executable')->displayHandlers->has($display_id) && !$view->get('executable')->displayHandlers->get($display_id)->isEnabled()) {
if ($view->getExecutable()->displayHandlers->has($display_id) && !$view->getExecutable()->displayHandlers->get($display_id)->isEnabled()) {
$tab_content['#attributes']['class'][] = 'views-display-disabled';
}
$form['displays']['settings']['settings_content'] = array(
@ -243,7 +243,7 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
parent::validate($form, $form_state);
$view = $this->entity;
foreach ($view->get('executable')->validate() as $display_errors) {
foreach ($view->getExecutable()->validate() as $display_errors) {
foreach ($display_errors as $error) {
form_set_error('', $error);
}
@ -261,16 +261,16 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
$displays = $view->get('display');
foreach ($displays as $id => $display) {
if (!empty($display['deleted'])) {
$view->get('executable')->displayHandlers->remove($id);
$view->getExecutable()->displayHandlers->remove($id);
unset($displays[$id]);
}
}
// Rename display ids if needed.
foreach ($view->get('executable')->displayHandlers as $id => $display) {
foreach ($view->getExecutable()->displayHandlers as $id => $display) {
if (!empty($display->display['new_id'])) {
$new_id = $display->display['new_id'];
$view->get('executable')->displayHandlers->set($new_id, $view->get('executable')->displayHandlers->get($id));
$view->get('executable')->displayHandlers->get($new_id)->display['id'] = $new_id;
$view->getExecutable()->displayHandlers->set($new_id, $view->getExecutable()->displayHandlers->get($id));
$view->getExecutable()->displayHandlers->get($new_id)->display['id'] = $new_id;
$displays[$new_id] = $displays[$id];
unset($displays[$id]);
@ -295,8 +295,8 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
continue;
}
if (($display->getPluginId() == 'page') && ($old_path == $destination) && ($old_path != $view->get('executable')->displayHandlers->get($id)->getOption('path'))) {
$destination = $view->get('executable')->displayHandlers->get($id)->getOption('path');
if (($display->getPluginId() == 'page') && ($old_path == $destination) && ($old_path != $view->getExecutable()->displayHandlers->get($id)->getOption('path'))) {
$destination = $view->getExecutable()->displayHandlers->get($id)->getOption('path');
$query->remove('destination');
// @todo For whatever reason drupal_goto is still using $_GET.
// @see http://drupal.org/node/1668866
@ -334,7 +334,7 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
public function getDisplayTab($view) {
$build = array();
$display_id = $this->displayID;
$display = $view->get('executable')->displayHandlers->get($display_id);
$display = $view->getExecutable()->displayHandlers->get($display_id);
// If the plugin doesn't exist, display an error message instead of an edit
// page.
if (empty($display)) {
@ -371,7 +371,7 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
// The master display cannot be cloned.
$is_default = $display['id'] == 'default';
// @todo: Figure out why getOption doesn't work here.
$is_enabled = $view->get('executable')->displayHandlers->get($display['id'])->isEnabled();
$is_enabled = $view->getExecutable()->displayHandlers->get($display['id'])->isEnabled();
if ($display['id'] != 'default') {
$build['top']['#theme_wrappers'] = array('container');
@ -400,8 +400,8 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
}
// Add a link to view the page unless the view is disabled or has no
// path.
elseif ($view->status() && $view->get('executable')->displayHandlers->get($display['id'])->hasPath()) {
$path = $view->get('executable')->displayHandlers->get($display['id'])->getPath();
elseif ($view->status() && $view->getExecutable()->displayHandlers->get($display['id'])->hasPath()) {
$path = $view->getExecutable()->displayHandlers->get($display['id'])->getPath();
if ($path && (strpos($path, '%') === FALSE)) {
$build['top']['actions']['path'] = array(
'#type' => 'link',
@ -474,7 +474,7 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
$build['top']['display_title'] = array(
'#theme' => 'views_ui_display_tab_setting',
'#description' => t('Display name'),
'#link' => $view->get('executable')->displayHandlers->get($display['id'])->optionLink(check_plain($display_title), 'display_title'),
'#link' => $view->getExecutable()->displayHandlers->get($display['id'])->optionLink(check_plain($display_title), 'display_title'),
);
}
@ -519,7 +519,7 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
// Fetch options from the display plugin, with a list of buckets they go into.
$options = array();
$view->get('executable')->displayHandlers->get($display['id'])->optionsSummary($buckets, $options);
$view->getExecutable()->displayHandlers->get($display['id'])->optionsSummary($buckets, $options);
// Place each option into its bucket.
foreach ($options as $id => $option) {
@ -583,7 +583,7 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
$view = $this->entity;
$id = $form_state['display_id'];
// setOption doesn't work because this would might affect upper displays
$view->get('executable')->displayHandlers->get($id)->setOption('enabled', TRUE);
$view->getExecutable()->displayHandlers->get($id)->setOption('enabled', TRUE);
// Store in cache
$view->cacheSet();
@ -598,7 +598,7 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
public function submitDisplayDisable($form, &$form_state) {
$view = $this->entity;
$id = $form_state['display_id'];
$view->get('executable')->displayHandlers->get($id)->setOption('enabled', FALSE);
$view->getExecutable()->displayHandlers->get($id)->setOption('enabled', FALSE);
// Store in cache
$view->cacheSet();
@ -637,7 +637,7 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
*/
public function rebuildCurrentTab(ViewUI $view, AjaxResponse $response, $display_id) {
$this->displayID = $display_id;
if (!$view->get('executable')->setDisplay('default')) {
if (!$view->getExecutable()->setDisplay('default')) {
return;
}
@ -783,7 +783,7 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
// By setting the current display the changed marker will appear on the new
// display.
$view->get('executable')->current_display = $new_display_id;
$view->getExecutable()->current_display = $new_display_id;
$view->cacheSet();
// Redirect to the new display's edit page.
@ -801,7 +801,7 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
$display_id = $view->addDisplay($display_type);
// A new display got added so the asterisks symbol should appear on the new
// display.
$view->get('executable')->current_display = $display_id;
$view->getExecutable()->current_display = $display_id;
$view->cacheSet();
// Redirect to the new display's edit page.
@ -833,7 +833,7 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
// By setting the current display the changed marker will appear on the new
// display.
$view->get('executable')->current_display = $new_display_id;
$view->getExecutable()->current_display = $new_display_id;
$view->cacheSet();
// Redirect to the new display's edit page.
@ -852,23 +852,23 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
$option_build['#description'] = $option['title'];
$option_build['#link'] = $view->get('executable')->displayHandlers->get($display['id'])->optionLink($option['value'], $id, '', empty($option['desc']) ? '' : $option['desc']);
$option_build['#link'] = $view->getExecutable()->displayHandlers->get($display['id'])->optionLink($option['value'], $id, '', empty($option['desc']) ? '' : $option['desc']);
$option_build['#links'] = array();
if (!empty($option['links']) && is_array($option['links'])) {
foreach ($option['links'] as $link_id => $link_value) {
$option_build['#settings_links'][] = $view->get('executable')->displayHandlers->get($display['id'])->optionLink($option['setting'], $link_id, 'views-button-configure', $link_value);
$option_build['#settings_links'][] = $view->getExecutable()->displayHandlers->get($display['id'])->optionLink($option['setting'], $link_id, 'views-button-configure', $link_value);
}
}
if (!empty($view->get('executable')->displayHandlers->get($display['id'])->options['defaults'][$id])) {
if (!empty($view->getExecutable()->displayHandlers->get($display['id'])->options['defaults'][$id])) {
$display_id = 'default';
$option_build['#defaulted'] = TRUE;
}
else {
$display_id = $display['id'];
if (!$view->get('executable')->displayHandlers->get($display['id'])->isDefaultDisplay()) {
if ($view->get('executable')->displayHandlers->get($display['id'])->defaultableSections($id)) {
if (!$view->getExecutable()->displayHandlers->get($display['id'])->isDefaultDisplay()) {
if ($view->getExecutable()->displayHandlers->get($display['id'])->defaultableSections($id)) {
$option_build['#overridden'] = TRUE;
}
}
@ -881,7 +881,7 @@ class ViewEditFormController extends ViewFormControllerBase implements EntityCon
* Add information about a section to a display.
*/
public function getFormBucket(ViewUI $view, $type, $display) {
$executable = $view->get('executable');
$executable = $view->getExecutable();
$executable->setDisplay($display['id']);
$executable->initStyle();

View File

@ -101,7 +101,7 @@ abstract class ViewFormControllerBase extends EntityFormController {
* The display_id which is edited on the current request.
*/
public function getDisplayTabs(ViewUI $view) {
$executable = $view->get('executable');
$executable = $view->getExecutable();
$executable->initDisplay();
$display_id = $this->displayID;
$tabs = array();
@ -160,7 +160,7 @@ abstract class ViewFormControllerBase extends EntityFormController {
$advanced_mode = config('views.settings')->get('ui.show.master_display');
// For other users, show the default display only if there are no others, and
// hide it if there's at least one "real" display.
$additional_displays = (count($view->get('executable')->displayHandlers) == 1);
$additional_displays = (count($view->getExecutable()->displayHandlers) == 1);
return $advanced_mode || $additional_displays;
}

View File

@ -237,7 +237,7 @@ class ViewListController extends ConfigEntityListController implements EntityCon
*/
protected function getDisplayPaths(EntityInterface $view) {
$all_paths = array();
$executable = $view->get('executable');
$executable = $view->getExecutable();
$executable->initDisplay();
foreach ($executable->displayHandlers as $display) {
if ($display->hasPath()) {

View File

@ -753,7 +753,7 @@ class ViewUI implements ViewStorageInterface {
// Let any future object know that this view has changed.
$this->changed = TRUE;
$executable = $this->get('executable');
$executable = $this->getExecutable();
if (isset($executable->current_display)) {
// Add the knowledge of the changed display, too.
$this->changed_display[$executable->current_display] = TRUE;