[ Index ]

PHP Cross Reference of Drupal 6 (gatewave)

title

Body

[close]

/sites/all/libraries/ckeditor/_source/plugins/forms/dialogs/ -> button.js (source)

   1  /*

   2  Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved.

   3  For licensing, see LICENSE.html or http://ckeditor.com/license

   4  */
   5  CKEDITOR.dialog.add( 'button', function( editor )
   6  {
   7      return {
   8          title : editor.lang.button.title,
   9          minWidth : 350,
  10          minHeight : 150,
  11          onShow : function()
  12          {
  13              delete this.button;
  14              var element = this.getParentEditor().getSelection().getSelectedElement();
  15              if ( element && element.getName() == "input" )
  16              {
  17                  var type = element.getAttribute( 'type' );
  18                  if ( type == "button" || type == "reset" || type == "submit" )
  19                  {
  20                      this.button = element;
  21                      this.setupContent( element );
  22                  }
  23              }
  24          },
  25          onOk : function()
  26          {
  27              var editor,
  28                  element = this.button,
  29                  isInsertMode = !element;
  30  
  31              if ( isInsertMode )
  32              {
  33                  editor = this.getParentEditor();
  34                  element = editor.document.createElement( 'input' );
  35              }
  36  
  37              if ( isInsertMode )
  38                  editor.insertElement( element );
  39              this.commitContent( { element : element } );
  40          },
  41          contents : [
  42              {
  43                  id : 'info',
  44                  label : editor.lang.button.title,
  45                  title : editor.lang.button.title,
  46                  elements : [
  47                      {
  48                          id : '_cke_saved_name',
  49                          type : 'text',
  50                          label : editor.lang.common.name,
  51                          'default' : '',
  52                          setup : function( element )
  53                          {
  54                              this.setValue(
  55                                      element.getAttribute( '_cke_saved_name' ) ||
  56                                      element.getAttribute( 'name' ) ||
  57                                      '' );
  58                          },
  59                          commit : function( data )
  60                          {
  61                              var element = data.element;
  62  
  63                              if ( this.getValue() )
  64                                  element.setAttribute( '_cke_saved_name', this.getValue() );
  65                              else
  66                              {
  67                                  element.removeAttribute( '_cke_saved_name' );
  68                                  element.removeAttribute( 'name' );
  69                              }
  70                          }
  71                      },
  72                      {
  73                          id : 'value',
  74                          type : 'text',
  75                          label : editor.lang.button.text,
  76                          accessKey : 'V',
  77                          'default' : '',
  78                          setup : function( element )
  79                          {
  80                              this.setValue( element.getAttribute( 'value' ) || '' );
  81                          },
  82                          commit : function( data )
  83                          {
  84                              var element = data.element;
  85  
  86                              if ( this.getValue() )
  87                                  element.setAttribute( 'value', this.getValue() );
  88                              else
  89                                  element.removeAttribute( 'value' );
  90                          }
  91                      },
  92                      {
  93                          id : 'type',
  94                          type : 'select',
  95                          label : editor.lang.button.type,
  96                          'default' : 'button',
  97                          accessKey : 'T',
  98                          items :
  99                          [
 100                              [ editor.lang.button.typeBtn, 'button' ],
 101                              [ editor.lang.button.typeSbm, 'submit' ],
 102                              [ editor.lang.button.typeRst, 'reset' ]
 103                          ],
 104                          setup : function( element )
 105                          {
 106                              this.setValue( element.getAttribute( 'type' ) || '' );
 107                          },
 108                          commit : function( data )
 109                          {
 110                              var element = data.element;
 111  
 112                              if ( CKEDITOR.env.ie )
 113                              {
 114                                  var elementType = element.getAttribute( 'type' );
 115                                  var currentType = this.getValue();
 116  
 117                                  if ( currentType != elementType )
 118                                  {
 119                                      var replace = CKEDITOR.dom.element.createFromHtml( '<input type="' + currentType +
 120                                          '"></input>', editor.document );
 121                                      element.copyAttributes( replace, { type : 1 } );
 122                                      replace.replace( element );
 123                                      editor.getSelection().selectElement( replace );
 124                                      data.element = replace;
 125                                  }
 126                              }
 127                              else
 128                                  element.setAttribute( 'type', this.getValue() );
 129                          }
 130                      }
 131                  ]
 132              }
 133          ]
 134      };
 135  });


Generated: Thu Mar 24 11:18:33 2011 Cross-referenced by PHPXref 0.7