diff options
| author | Xavier Morel <xmo@openerp.com> | 2013-09-11 18:33:59 +0200 |
|---|---|---|
| committer | Xavier Morel <xmo@openerp.com> | 2013-09-11 18:33:59 +0200 |
| commit | 399963058b6e6414a549ffc937bbfbb9cc9d48b5 (patch) | |
| tree | 37cd386aba4a46dd946641548dad4a530ccbd078 /addons/website/static/lib/ckeditor/plugins/basicstyles/plugin.js | |
| parent | f7a14f2830489ef784845db736be33cb07c83219 (diff) | |
[ADD] ckeditor source
forgot I'd just symlinked it locally
bzr revid: xmo@openerp.com-20130911163359-wtwxbiz2rxogdp2j
Diffstat (limited to 'addons/website/static/lib/ckeditor/plugins/basicstyles/plugin.js')
| -rw-r--r-- | addons/website/static/lib/ckeditor/plugins/basicstyles/plugin.js | 189 |
1 files changed, 189 insertions, 0 deletions
diff --git a/addons/website/static/lib/ckeditor/plugins/basicstyles/plugin.js b/addons/website/static/lib/ckeditor/plugins/basicstyles/plugin.js new file mode 100644 index 00000000000..e206b0e04d9 --- /dev/null +++ b/addons/website/static/lib/ckeditor/plugins/basicstyles/plugin.js @@ -0,0 +1,189 @@ +/** + * @license Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved. + * For licensing, see LICENSE.md or http://ckeditor.com/license + */ + +CKEDITOR.plugins.add( 'basicstyles', { + lang: 'af,ar,bg,bn,bs,ca,cs,cy,da,de,el,en,en-au,en-ca,en-gb,eo,es,et,eu,fa,fi,fo,fr,fr-ca,gl,gu,he,hi,hr,hu,id,is,it,ja,ka,km,ko,ku,lt,lv,mk,mn,ms,nb,nl,no,pl,pt,pt-br,ro,ru,si,sk,sl,sq,sr,sr-latn,sv,th,tr,ug,uk,vi,zh,zh-cn', // %REMOVE_LINE_CORE% + icons: 'bold,italic,underline,strike,subscript,superscript', // %REMOVE_LINE_CORE% + hidpi: true, // %REMOVE_LINE_CORE% + init: function( editor ) { + var order = 0; + // All buttons use the same code to register. So, to avoid + // duplications, let's use this tool function. + var addButtonCommand = function( buttonName, buttonLabel, commandName, styleDefiniton ) { + // Disable the command if no definition is configured. + if ( !styleDefiniton ) + return; + + var style = new CKEDITOR.style( styleDefiniton ), + forms = contentForms[ commandName ]; + + // Put the style as the most important form. + forms.unshift( style ); + + // Listen to contextual style activation. + editor.attachStyleStateChange( style, function( state ) { + !editor.readOnly && editor.getCommand( commandName ).setState( state ); + }); + + // Create the command that can be used to apply the style. + editor.addCommand( commandName, new CKEDITOR.styleCommand( style, { + contentForms: forms + } ) ); + + // Register the button, if the button plugin is loaded. + if ( editor.ui.addButton ) { + editor.ui.addButton( buttonName, { + label: buttonLabel, + command: commandName, + toolbar: 'basicstyles,' + ( order += 10 ) + }); + } + }; + + var contentForms = { + bold: [ + 'strong', + 'b', + [ 'span', function( el ) { + var fw = el.styles[ 'font-weight' ]; + return fw == 'bold' || +fw >= 700; + } ] + ], + + italic: [ + 'em', + 'i', + [ 'span', function( el ) { + return el.styles[ 'font-style' ] == 'italic'; + } ] + ], + + underline: [ + 'u', + [ 'span', function( el ) { + return el.styles[ 'text-decoration' ] == 'underline'; + } ] + ], + + strike: [ + 's', + 'strike', + [ 'span', function( el ) { + return el.styles[ 'text-decoration' ] == 'line-through'; + } ] + ], + + subscript: [ + 'sub' + ], + + superscript: [ + 'sup' + ] + }, + config = editor.config, + lang = editor.lang.basicstyles; + + addButtonCommand( 'Bold', lang.bold, 'bold', config.coreStyles_bold ); + addButtonCommand( 'Italic', lang.italic, 'italic', config.coreStyles_italic ); + addButtonCommand( 'Underline', lang.underline, 'underline', config.coreStyles_underline ); + addButtonCommand( 'Strike', lang.strike, 'strike', config.coreStyles_strike ); + addButtonCommand( 'Subscript', lang.subscript, 'subscript', config.coreStyles_subscript ); + addButtonCommand( 'Superscript', lang.superscript, 'superscript', config.coreStyles_superscript ); + + editor.setKeystroke( [ + [ CKEDITOR.CTRL + 66 /*B*/, 'bold' ], + [ CKEDITOR.CTRL + 73 /*I*/, 'italic' ], + [ CKEDITOR.CTRL + 85 /*U*/, 'underline' ] + ] ); + } +}); + +// Basic Inline Styles. + +/** + * The style definition that applies the **bold** style to the text. + * + * config.coreStyles_bold = { element: 'b', overrides: 'strong' }; + * + * config.coreStyles_bold = { + * element: 'span', + * attributes: { 'class': 'Bold' } + * }; + * + * @cfg + * @member CKEDITOR.config + */ +CKEDITOR.config.coreStyles_bold = { element: 'strong', overrides: 'b' }; + +/** + * The style definition that applies the *italics* style to the text. + * + * config.coreStyles_italic = { element: 'i', overrides: 'em' }; + * + * CKEDITOR.config.coreStyles_italic = { + * element: 'span', + * attributes: { 'class': 'Italic' } + * }; + * + * @cfg + * @member CKEDITOR.config + */ +CKEDITOR.config.coreStyles_italic = { element: 'em', overrides: 'i' }; + +/** + * The style definition that applies the <u>underline</u> style to the text. + * + * CKEDITOR.config.coreStyles_underline = { + * element: 'span', + * attributes: { 'class': 'Underline' } + * }; + * + * @cfg + * @member CKEDITOR.config + */ +CKEDITOR.config.coreStyles_underline = { element: 'u' }; + +/** + * The style definition that applies the <strike>strike-through</strike> style to the text. + * + * CKEDITOR.config.coreStyles_strike = { + * element: 'span', + * attributes: { 'class': 'StrikeThrough' }, + * overrides: 'strike' + * }; + * + * @cfg + * @member CKEDITOR.config + */ +CKEDITOR.config.coreStyles_strike = { element: 's', overrides: 'strike' }; + +/** + * The style definition that applies the subscript style to the text. + * + * CKEDITOR.config.coreStyles_subscript = { + * element: 'span', + * attributes: { 'class': 'Subscript' }, + * overrides: 'sub' + * }; + * + * @cfg + * @member CKEDITOR.config + */ +CKEDITOR.config.coreStyles_subscript = { element: 'sub' }; + +/** + * The style definition that applies the superscript style to the text. + * + * CKEDITOR.config.coreStyles_superscript = { + * element: 'span', + * attributes: { 'class': 'Superscript' }, + * overrides: 'sup' + * }; + * + * @cfg + * @member CKEDITOR.config + */ +CKEDITOR.config.coreStyles_superscript = { element: 'sup' }; |
