class DrupalImage
Same name in other branches
- 9 core/modules/ckeditor/src/Plugin/CKEditorPlugin/DrupalImage.php \Drupal\ckeditor\Plugin\CKEditorPlugin\DrupalImage
Defines the "drupalimage" plugin.
Plugin annotation
@CKEditorPlugin(
id = "drupalimage",
label = @Translation("Image"),
module = "ckeditor"
)
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements \Drupal\Component\Plugin\PluginInspectionInterface, \Drupal\Component\Plugin\DerivativeInspectionInterface
- class \Drupal\Core\Plugin\PluginBase extends \Drupal\Component\Plugin\PluginBase uses \Drupal\Core\StringTranslation\StringTranslationTrait, \Drupal\Core\DependencyInjection\DependencySerializationTrait, \Drupal\Core\Messenger\MessengerTrait
- class \Drupal\ckeditor\CKEditorPluginBase extends \Drupal\Core\Plugin\PluginBase implements \Drupal\ckeditor\CKEditorPluginInterface, \Drupal\ckeditor\CKEditorPluginButtonsInterface
- class \Drupal\ckeditor\Plugin\CKEditorPlugin\DrupalImage extends \Drupal\ckeditor\CKEditorPluginBase implements \Drupal\ckeditor\CKEditorPluginConfigurableInterface
- class \Drupal\ckeditor\CKEditorPluginBase extends \Drupal\Core\Plugin\PluginBase implements \Drupal\ckeditor\CKEditorPluginInterface, \Drupal\ckeditor\CKEditorPluginButtonsInterface
- class \Drupal\Core\Plugin\PluginBase extends \Drupal\Component\Plugin\PluginBase uses \Drupal\Core\StringTranslation\StringTranslationTrait, \Drupal\Core\DependencyInjection\DependencySerializationTrait, \Drupal\Core\Messenger\MessengerTrait
Expanded class hierarchy of DrupalImage
14 string references to 'DrupalImage'
- CKEditor::getDefaultSettings in core/
modules/ ckeditor/ src/ Plugin/ Editor/ CKEditor.php - Returns the default settings for this configurable text editor.
- CKEditorAdminTest::testExistingFormat in core/
modules/ ckeditor/ tests/ src/ Functional/ CKEditorAdminTest.php - Tests configuring a text editor for an existing text format.
- CKEditorIntegrationTest::testDrupalImageCaptionDialog in core/
modules/ ckeditor/ tests/ src/ FunctionalJavascript/ CKEditorIntegrationTest.php - Tests if the Drupal Image Caption plugin appears and works as expected.
- CKEditorIntegrationTest::testLinkability in core/
modules/ media/ tests/ src/ FunctionalJavascript/ CKEditorIntegrationTest.php - Tests linkability of the CKEditor widget.
- CKEditorPluginManagerTest::testEnabledPlugins in core/
modules/ ckeditor/ tests/ src/ Kernel/ CKEditorPluginManagerTest.php - Tests the enabling of plugins.
File
-
core/
modules/ ckeditor/ src/ Plugin/ CKEditorPlugin/ DrupalImage.php, line 19
Namespace
Drupal\ckeditor\Plugin\CKEditorPluginView source
class DrupalImage extends CKEditorPluginBase implements CKEditorPluginConfigurableInterface {
/**
* {@inheritdoc}
*/
public function getFile() {
return drupal_get_path('module', 'ckeditor') . '/js/plugins/drupalimage/plugin.js';
}
/**
* {@inheritdoc}
*/
public function getLibraries(Editor $editor) {
return [
'core/drupal.ajax',
];
}
/**
* {@inheritdoc}
*/
public function getConfig(Editor $editor) {
return [
'drupalImage_dialogTitleAdd' => $this->t('Insert Image'),
'drupalImage_dialogTitleEdit' => $this->t('Edit Image'),
];
}
/**
* {@inheritdoc}
*/
public function getButtons() {
return [
'DrupalImage' => [
'label' => $this->t('Image'),
'image' => drupal_get_path('module', 'ckeditor') . '/js/plugins/drupalimage/icons/drupalimage.png',
],
];
}
/**
* {@inheritdoc}
*
* @see \Drupal\editor\Form\EditorImageDialog
* @see editor_image_upload_settings_form()
*/
public function settingsForm(array $form, FormStateInterface $form_state, Editor $editor) {
$form_state->loadInclude('editor', 'admin.inc');
$form['image_upload'] = editor_image_upload_settings_form($editor);
$form['image_upload']['#attached']['library'][] = 'ckeditor/drupal.ckeditor.drupalimage.admin';
$form['image_upload']['#element_validate'][] = [
$this,
'validateImageUploadSettings',
];
return $form;
}
/**
* #element_validate handler for the "image_upload" element in settingsForm().
*
* Moves the text editor's image upload settings from the DrupalImage plugin's
* own settings into $editor->image_upload.
*
* @see \Drupal\editor\Form\EditorImageDialog
* @see editor_image_upload_settings_form()
*/
public function validateImageUploadSettings(array $element, FormStateInterface $form_state) {
$settings =& $form_state->getValue([
'editor',
'settings',
'plugins',
'drupalimage',
'image_upload',
]);
$form_state->get('editor')
->setImageUploadSettings($settings);
$form_state->unsetValue([
'editor',
'settings',
'plugins',
'drupalimage',
]);
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|
CKEditorPluginBase::getDependencies | public | function | Returns a list of plugins this plugin requires. | Overrides CKEditorPluginInterface::getDependencies | 1 |
CKEditorPluginBase::isInternal | public | function | Indicates if this plugin is part of the optimized CKEditor build. | Overrides CKEditorPluginInterface::isInternal | 4 |
DrupalImage::getButtons | public | function | Returns the buttons that this plugin provides, along with metadata. | Overrides CKEditorPluginButtonsInterface::getButtons | |
DrupalImage::getConfig | public | function | Returns the additions to CKEDITOR.config for a specific CKEditor instance. | Overrides CKEditorPluginInterface::getConfig | |
DrupalImage::getFile | public | function | Returns the Drupal root-relative file path to the plugin JavaScript file. | Overrides CKEditorPluginInterface::getFile | |
DrupalImage::getLibraries | public | function | Returns a list of libraries this plugin requires. | Overrides CKEditorPluginBase::getLibraries | |
DrupalImage::settingsForm | public | function | Overrides CKEditorPluginConfigurableInterface::settingsForm | ||
DrupalImage::validateImageUploadSettings | public | function | #element_validate handler for the "image_upload" element in settingsForm(). | ||
PluginInspectionInterface::getPluginDefinition | public | function | Gets the definition of the plugin implementation. | 6 | |
PluginInspectionInterface::getPluginId | public | function | Gets the plugin_id of the plugin instance. | 2 |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.