MDL-75078 editor_tiny: Hola TinyMCE 6

Part of MDL-75966

This commit adds TinyMCE version 6.1 into Moodle core.

A basic editor implementation is included, along with Moodle loader, and
basic Plugin API for Moodle. The Plugin API will be extended and
improved in future changes.

A new subplugin is defined for this plugin.
This commit is contained in:
Andrew Nicols
2022-11-10 19:51:45 +08:00
parent 5877ae306e
commit 71d30542ae
167 changed files with 110419 additions and 1 deletions
@@ -0,0 +1,42 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
namespace editor_tiny;
use context;
/**
* An interface representing a plugin with menu items.
*
* @package editor_tiny
* @copyright 2021 Andrew Lyons <[email protected]>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
interface plugin_with_configuration {
/**
* Get a list of the menu items provided by this plugin.
*
* @param context $context The context that the editor is used within
* @param array $options The options passed in when requesting the editor
* @param array $fpoptions The filepicker options passed in when requesting the editor
* @return array
*/
public static function get_plugin_configuration_for_context(
context $context,
array $options,
array $fpoptions
): array;
}