mediawiki-extensions-Visual.../modules/ve/init/sa/ve.init.sa.Target.js
Trevor Parscal 2717ea1645 Add ve.ui.ToolGroup and use within toolbar setup
Objectives:

* Use a class for toolbar groups to add more functionality later
* Rename addTools method to setup

Changes:

*.php
* Add link to new file
* Move ui element classes up for more general use

ve.init.mw.ViewPageTarget.js, ve.init.sa.Target.js, ve.ui.Context.js,
ve.ui.SurfaceWidget.js
* Update use of addTools method

ve.ui.Tool.css, ve.ui.Toolbar.css
* Move styles between sheets

ve.ui.Toolbar.js
* Rename addTools to setup
* Use ve.ui.ToolGroup objects when building tools

ve.ui.ToolGroup.js
* New class, encapsulates tools

Change-Id: Ic3a643634a80a8ac7d6f6f47f031d001c7efaee7
2013-08-07 05:08:20 +00:00

46 lines
1.2 KiB
JavaScript

/*!
* VisualEditor Standalone Initialization Target class.
*
* @copyright 2011-2013 VisualEditor Team and others; see AUTHORS.txt
* @license The MIT License (MIT); see LICENSE.txt
*/
/**
* Initialization Standalone target.
*
* @example
* new ve.init.sa.Target(
* $( '<div>' ).appendTo( 'body' ), ve.createDocumentFromHtml( '<p>Hello world.</p>' )
* );
*
* @class
* @extends ve.init.Target
*
* @constructor
* @param {jQuery} $container Container to render target into
* @param {ve.dm.Document} doc Document model
*/
ve.init.sa.Target = function VeInitSaTarget( $container, doc ) {
// Parent constructor
ve.init.Target.call( this, $container );
// Properties
this.surface = new ve.ui.Surface( doc );
this.toolbar = new ve.ui.SurfaceToolbar( this.surface, { 'shadow': true } );
// Initialization
this.toolbar.$.addClass( 've-init-sa-target-toolbar' );
this.toolbar.setup( this.constructor.static.toolbarTools );
this.toolbar.enableFloatable();
this.$.append( this.toolbar.$, this.surface.$ );
this.toolbar.initialize();
this.surface.addCommands( this.constructor.static.surfaceCommands );
this.surface.initialize();
};
/* Inheritance */
ve.inheritClass( ve.init.sa.Target, ve.init.Target );