Go to file
Trevor Parscal 332e31fb00 Toolbar API
Objectives:

* Make it possible to add items to toolbars without having to have all
  toolbars know about the items in advance
* Make it possible to specialize an existing tool and have it be used
  instead of the base implementation

Approach:

* Tools are named using a path-style category/id/ext system, making them
  selectable, the latter component being used to differentiate extended
  tools from their base classes, but is ignored during selection
* Toolbars have ToolGroups, which include or exclude tools by category or
  category/id, and order them by promoting and demoting selections of
  tools by category or category/id

Future:

* Add a way to place available but not yet placed tools in an "overflow"
  group
* Add a mode to ToolGroup to make the tools a multi-column drop-down style
  list with labels so tools with less obvious icons are easier to identify
  - and probably use this as the overflow group

Change-Id: I7625f861435a99ce3d7a2b1ece9731aaab1776f8
2013-08-20 16:08:26 -07:00
.docs Add ve.ui.ToolGroup and use within toolbar setup 2013-08-07 05:08:20 +00:00
demos Add ve.ui.ToolGroup and use within toolbar setup 2013-08-07 05:08:20 +00:00
maintenance makeStaticLoader: Update output and re-sync 2013-07-04 05:11:13 +02:00
modules Toolbar API 2013-08-20 16:08:26 -07:00
.csslintrc Add .csslintrc file and fix remaining warnings 2013-06-05 11:07:00 +00:00
.gitignore Implement Grunt support (grunt jshint,csslint,qunit,watch) 2013-06-05 11:10:23 +00:00
.gitreview
.jshintignore Language Inspector UI 2013-07-29 00:38:59 -04:00
.jshintrc oojs: Integrate with OOJS v1.0.0 2013-06-06 17:29:55 +02:00
ApiVisualEditor.php ve.ce.MWTransclusionNode: Check for API errors 2013-08-03 00:35:42 +02:00
ApiVisualEditorEdit.php Set 'notminor' if minor edit box not checked 2013-07-24 15:07:05 +01:00
AUTHORS.txt Add Matma Rex to AUTHORS.txt 2013-04-26 16:13:58 -07:00
CODING.md
Gruntfile.js grunt: Also delete QUnit temp files when test fails 2013-06-17 11:27:52 -07:00
LICENSE.txt
package.json Implement Grunt support (grunt jshint,csslint,qunit,watch) 2013-06-05 11:10:23 +00:00
README.txt Remove trailing whitespace everywhere 2013-05-25 15:04:11 +00:00
VisualEditor.hooks.php Use internal ve.track to log events 2013-08-15 19:43:36 +00:00
VisualEditor.i18n.php Localisation updates from http://translatewiki.net. 2013-08-20 19:36:21 +00:00
VisualEditor.php Merge "Create a subscript tool" 2013-08-16 02:16:25 +00:00
VisualEditorMessagesModule.php Prepend section title to edit summary 2013-07-23 22:27:33 +00:00

VisualEditor provides a visual editor for wiki pages. It is written in
JavaScript and runs in a web browser.

It uses the Parsoid parser to convert wikitext documents to annotated HTML
which the VisualEditor is able to load, modify and emit back to Parsoid at
which point it is converted back into wikitext.

For more information about these projects, check out the wiki:

	* http://www.mediawiki.org/wiki/VisualEditor
	* http://www.mediawiki.org/wiki/Parsoid