2 Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
\r
3 For licensing, see LICENSE.html or http://ckeditor.com/license
\r
5 CKEDITOR.dialog.add( 'button', function( editor )
\r
8 title : editor.lang.button.title,
\r
14 var element = this.getParentEditor().getSelection().getSelectedElement();
\r
15 if ( element && element.getName() == "input" )
\r
17 var type = element.getAttribute( 'type' );
\r
18 if ( type == "button" || type == "reset" || type == "submit" )
\r
20 this.button = element;
\r
21 this.setupContent( element );
\r
28 element = this.button,
\r
29 isInsertMode = !element;
\r
33 editor = this.getParentEditor();
\r
34 element = editor.document.createElement( 'input' );
\r
38 editor.insertElement( element );
\r
39 this.commitContent( { element : element } );
\r
44 label : editor.lang.button.title,
\r
45 title : editor.lang.button.title,
\r
48 id : '_cke_saved_name',
\r
50 label : editor.lang.common.name,
\r
52 setup : function( element )
\r
55 element.getAttribute( '_cke_saved_name' ) ||
\r
56 element.getAttribute( 'name' ) ||
\r
59 commit : function( data )
\r
61 var element = data.element;
\r
63 if ( this.getValue() )
\r
64 element.setAttribute( '_cke_saved_name', this.getValue() );
\r
67 element.removeAttribute( '_cke_saved_name' );
\r
68 element.removeAttribute( 'name' );
\r
75 label : editor.lang.button.text,
\r
78 setup : function( element )
\r
80 this.setValue( element.getAttribute( 'value' ) || '' );
\r
82 commit : function( data )
\r
84 var element = data.element;
\r
86 if ( this.getValue() )
\r
87 element.setAttribute( 'value', this.getValue() );
\r
89 element.removeAttribute( 'value' );
\r
95 label : editor.lang.button.type,
\r
96 'default' : 'button',
\r
100 [ editor.lang.button.typeBtn, 'button' ],
\r
101 [ editor.lang.button.typeSbm, 'submit' ],
\r
102 [ editor.lang.button.typeRst, 'reset' ]
\r
104 setup : function( element )
\r
106 this.setValue( element.getAttribute( 'type' ) || '' );
\r
108 commit : function( data )
\r
110 var element = data.element;
\r
112 if ( CKEDITOR.env.ie )
\r
114 var elementType = element.getAttribute( 'type' );
\r
115 var currentType = this.getValue();
\r
117 if ( currentType != elementType )
\r
119 var replace = CKEDITOR.dom.element.createFromHtml( '<input type="' + currentType +
\r
120 '"></input>', editor.document );
\r
121 element.copyAttributes( replace, { type : 1 } );
\r
122 replace.replace( element );
\r
123 editor.getSelection().selectElement( replace );
\r
124 data.element = replace;
\r
128 element.setAttribute( 'type', this.getValue() );
\r