Atto: Difference between revisions
Damyon Wiese (talk | contribs) No edit summary |
Damyon Wiese (talk | contribs) No edit summary |
||
Line 5: | Line 5: | ||
Atto is implemented as a standard Moodle text editor plugin. Most of the code is written in javascript as a standard Moodle YUI module. | Atto is implemented as a standard Moodle text editor plugin. Most of the code is written in javascript as a standard Moodle YUI module. | ||
==Atto Plugins== | |||
All of the buttons/menus in Atto are implemented as true Moodle subplugins. This means that the subplugins can do anything a subplugin can do including, lang strings, db tables, yui modules. | All of the buttons/menus in Atto are implemented as true Moodle subplugins. This means that the subplugins can do anything a subplugin can do including, lang strings, db tables, yui modules. | ||
Line 11: | Line 11: | ||
There are a couple of extra functions/structure required for an Atto subplugin which are required in order to load a plugin on the toolbar. | There are a couple of extra functions/structure required for an Atto subplugin which are required in order to load a plugin on the toolbar. | ||
==Structure of an Atto Plugin== | |||
/lib.php | /lib.php | ||
Line 29: | Line 29: | ||
See: https://docs.moodle.org/dev/YUI/Modules for more information about YUI modules. | See: https://docs.moodle.org/dev/YUI/Modules for more information about YUI modules. | ||
==Atto subplugin Php API== | |||
==Atto subplugin Javascript API== |
Revision as of 04:29, 29 January 2014
Moodle 2.7
Atto is a javascript text editor built specifically for Moodle. Atto is the default text editor in Moodle from 2.7 onwards.
Atto is implemented as a standard Moodle text editor plugin. Most of the code is written in javascript as a standard Moodle YUI module.
Atto Plugins
All of the buttons/menus in Atto are implemented as true Moodle subplugins. This means that the subplugins can do anything a subplugin can do including, lang strings, db tables, yui modules.
There are a couple of extra functions/structure required for an Atto subplugin which are required in order to load a plugin on the toolbar.
Structure of an Atto Plugin
/lib.php Optional. Only required if your plugin needs to implement one of the component callbacks listed below.
/settings.php Optional. Only required if your plugin wants to support custom admin settings.
/version.php Required. Moodle plugin version.
/lang/en/atto_pluginname.php Required. Language file. This file is required and must at least define the language string 'pluginname'.
/yui/src/button/ Required. The plugin must implement a YUI module that will be included by the editor when the page loads. That YUI module must be named 'button' and must insert itself a class into the M.<plugin name> namespace, with an init function that will be called to initialise the editor. See: https://docs.moodle.org/dev/YUI/Modules for more information about YUI modules.