class LlamaContextualAndButton

Same name in other branches
  1. 8.9.x core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/LlamaContextualAndButton.php \Drupal\ckeditor_test\Plugin\CKEditorPlugin\LlamaContextualAndButton

Defines a "LlamaContextualAndButton" plugin, with a "llama" feature.

Plugin annotation


@CKEditorPlugin(
  id = "llama_contextual_and_button",
  label = @Translation("Contextual Llama With Button")
)

Hierarchy

Expanded class hierarchy of LlamaContextualAndButton

File

core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/LlamaContextualAndButton.php, line 19

Namespace

Drupal\ckeditor_test\Plugin\CKEditorPlugin
View source
class LlamaContextualAndButton extends Llama implements CKEditorPluginContextualInterface, CKEditorPluginButtonsInterface, CKEditorPluginConfigurableInterface {
    
    /**
     * {@inheritdoc}
     */
    public function isEnabled(Editor $editor) {
        // Automatically enable this plugin if the Strike button is enabled.
        $settings = $editor->getSettings();
        foreach ($settings['toolbar']['rows'] as $row) {
            foreach ($row as $group) {
                if (in_array('Strike', $group['items'])) {
                    return TRUE;
                }
            }
        }
        return FALSE;
    }
    
    /**
     * {@inheritdoc}
     */
    public function getButtons() {
        return [
            'Llama' => [
                'label' => $this->t('Insert Llama'),
            ],
        ];
    }
    
    /**
     * {@inheritdoc}
     */
    public function getFile() {
        return $this->moduleList
            ->getPath('ckeditor_test') . '/js/llama_contextual_and_button.js';
    }
    
    /**
     * {@inheritdoc}
     */
    public function settingsForm(array $form, FormStateInterface $form_state, Editor $editor) {
        // Defaults.
        $config = [
            'ultra_llama_mode' => FALSE,
        ];
        $settings = $editor->getSettings();
        if (isset($settings['plugins']['llama_contextual_and_button'])) {
            $config = $settings['plugins']['llama_contextual_and_button'];
        }
        $form['ultra_llama_mode'] = [
            '#title' => $this->t('Ultra llama mode'),
            '#type' => 'checkbox',
            '#default_value' => $config['ultra_llama_mode'],
        ];
        return $form;
    }

}

Members

Title Sort descending Modifiers Object type Summary Overriden Title Overrides
Llama::$moduleList protected property The module list service.
Llama::create public static function Creates an instance of the plugin. Overrides ContainerFactoryPluginInterface::create
Llama::getConfig public function Returns the additions to CKEDITOR.config for a specific CKEditor instance. Overrides CKEditorPluginInterface::getConfig
Llama::getDependencies public function Returns a list of plugins this plugin requires. Overrides CKEditorPluginInterface::getDependencies
Llama::getLibraries public function Returns a list of libraries this plugin requires. Overrides CKEditorPluginInterface::getLibraries
Llama::isInternal public function Indicates if this plugin is part of the optimized CKEditor build. Overrides CKEditorPluginInterface::isInternal
LlamaContextualAndButton::getButtons public function Returns the buttons that this plugin provides, along with metadata. Overrides CKEditorPluginButtonsInterface::getButtons
LlamaContextualAndButton::getFile public function Returns the Drupal root-relative file path to the plugin JavaScript file. Overrides Llama::getFile
LlamaContextualAndButton::isEnabled public function Checks if this plugin should be enabled based on the editor configuration. Overrides CKEditorPluginContextualInterface::isEnabled
LlamaContextualAndButton::settingsForm public function Returns a settings form to configure this CKEditor plugin. Overrides CKEditorPluginConfigurableInterface::settingsForm
PluginBase::$configuration protected property Configuration information passed into the plugin.
PluginBase::$pluginDefinition protected property The plugin implementation definition.
PluginBase::$pluginId protected property The plugin_id.
PluginBase::DERIVATIVE_SEPARATOR constant A string which is used to separate base plugin IDs from the derivative ID.
PluginBase::getBaseId public function Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface::getBaseId
PluginBase::getDerivativeId public function Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface::getDerivativeId
PluginBase::getPluginDefinition public function Gets the definition of the plugin implementation. Overrides PluginInspectionInterface::getPluginDefinition
PluginBase::getPluginId public function Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface::getPluginId
PluginBase::isConfigurable public function Determines if the plugin is configurable.
PluginBase::__construct public function Constructs a \Drupal\Component\Plugin\PluginBase object. 8
StringTranslationTrait::$stringTranslation protected property The string translation service. 3
StringTranslationTrait::formatPlural protected function Formats a string containing a count of items.
StringTranslationTrait::getNumberOfPlurals protected function Returns the number of plurals supported by a given language.
StringTranslationTrait::getStringTranslation protected function Gets the string translation service.
StringTranslationTrait::setStringTranslation public function Sets the string translation service to use. 2
StringTranslationTrait::t protected function Translates a string to the current language or to a given language.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.