1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118
|
/**
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
* For licensing, see LICENSE.md or http://ckeditor.com/license
*/
CKEDITOR.dialog.add( 'textarea', function( editor ) {
return {
title: editor.lang.forms.textarea.title,
minWidth: 350,
minHeight: 220,
onShow: function() {
delete this.textarea;
var element = this.getParentEditor().getSelection().getSelectedElement();
if ( element && element.getName() == "textarea" ) {
this.textarea = element;
this.setupContent( element );
}
},
onOk: function() {
var editor,
element = this.textarea,
isInsertMode = !element;
if ( isInsertMode ) {
editor = this.getParentEditor();
element = editor.document.createElement( 'textarea' );
}
this.commitContent( element );
if ( isInsertMode )
editor.insertElement( element );
},
contents: [
{
id: 'info',
label: editor.lang.forms.textarea.title,
title: editor.lang.forms.textarea.title,
elements: [
{
id: '_cke_saved_name',
type: 'text',
label: editor.lang.common.name,
'default': '',
accessKey: 'N',
setup: function( element ) {
this.setValue( element.data( 'cke-saved-name' ) || element.getAttribute( 'name' ) || '' );
},
commit: function( element ) {
if ( this.getValue() )
element.data( 'cke-saved-name', this.getValue() );
else {
element.data( 'cke-saved-name', false );
element.removeAttribute( 'name' );
}
}
},
{
type: 'hbox',
widths: [ '50%', '50%' ],
children: [
{
id: 'cols',
type: 'text',
label: editor.lang.forms.textarea.cols,
'default': '',
accessKey: 'C',
style: 'width:50px',
validate: CKEDITOR.dialog.validate.integer( editor.lang.common.validateNumberFailed ),
setup: function( element ) {
var value = element.hasAttribute( 'cols' ) && element.getAttribute( 'cols' );
this.setValue( value || '' );
},
commit: function( element ) {
if ( this.getValue() )
element.setAttribute( 'cols', this.getValue() );
else
element.removeAttribute( 'cols' );
}
},
{
id: 'rows',
type: 'text',
label: editor.lang.forms.textarea.rows,
'default': '',
accessKey: 'R',
style: 'width:50px',
validate: CKEDITOR.dialog.validate.integer( editor.lang.common.validateNumberFailed ),
setup: function( element ) {
var value = element.hasAttribute( 'rows' ) && element.getAttribute( 'rows' );
this.setValue( value || '' );
},
commit: function( element ) {
if ( this.getValue() )
element.setAttribute( 'rows', this.getValue() );
else
element.removeAttribute( 'rows' );
}
}
]
},
{
id: 'value',
type: 'textarea',
label: editor.lang.forms.textfield.value,
'default': '',
setup: function( element ) {
this.setValue( element.$.defaultValue );
},
commit: function( element ) {
element.$.value = element.$.defaultValue = this.getValue();
}
}
]
}
]
};
} );
|