**[[http://api.drupal.org/api/views/includes!admin.inc/function/views_ui_add_item_form/7|views_ui_add_item_form]]($form, &$form_state)** * $view->set_display($display_id) * $this->init_display(); * **foreach**: $this->display[$id]->handler = \\ views_get_plugin('display', $this->display[$id]->display_plugin); **[[http://api.drupal.org/api/views/views.module/function/views_get_plugin/7|views_get_plugin]]($type, $plugin, $reset = FALSE)** * $definition = views_fetch_plugin_data($type, $plugin, $reset); \\ //etwa $type=display, $plugin=default|page|...// * views_include('plugins'); \\ //(views/includes/plugins.inc)// * views_include_handlers(); \\ //views_include: base, handlers, cach, plugins// \\ //**views_module_include**('views', $reset)// * ctools_include('plugins') - //(ctools/includes/plugins.inc)// * return: **ctools_plugin_api_include**('views', $api, views_api_minimum_version(), views_api_version()) \\ * $cache = views_discover_plugins(); * return: $cache | $cache[$type] | $cache[$type][$plugin]; * return _views_create_handler($definition, $type); **ctools_plugin_api_include($owner, $api, $minimum_version, $current_version)** \\ hier: //$owner=views, $api=views// * $info = **ctools_plugin_api_info**($owner, $api, $minimum_version, $current_version); * **foreach** ($info as $module => $plugin_info) * require_once ..."/$plugin_info[path]/$file" | ..."/$file" * drupal_alter($hook, $cache[$owner][$api]); * return: $info; **ctools_plugin_api_info($owner, $api, $minimum_version, $current_version)** \\ hier: //$owner=views, $api=views// * $hook = **ctools_plugin_api_get_hook**($owner, $api); \\ //hook=views_ctools_plugin_api_hook_name (='views_api')// * **foreach** (module_implements($hook) as $module) * $function = $module . '_' . $hook; //(__denke an das Beispiel 'aktionen_views_api' mit api und path__)// * $info = $function($owner, $api); * drupal_alter($hook, $cache[$owner][$api]); * return $cache[$owner][$api];