Changeset 2615


Ignore:
Timestamp:
11/03/2008 08:02:16 AM (7 years ago)
Author:
martinkou
Message:

Added preliminary (buggy) implementation for CKEDITOR.editor::insertHtml().
Finished the smiley dialog.

Location:
CKEditor/branches/prototype/_source
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • CKEditor/branches/prototype/_source/core/dom/element.js

    r2593 r2615  
    761761
    762762                /**
    763                  * Makes the element unselectable.
     763                 * Makes the element and its children unselectable.
    764764                 * @function
    765765                 * @example
  • CKEditor/branches/prototype/_source/core/editor.js

    r2483 r2615  
    5151
    5252                var loadedConfig = loadConfigLoaded[ customConfig ] || ( loadConfigLoaded[ customConfig ] = {} );
     53 
    5354
    5455                // If the custom config has already been downloaded, reuse it.
     
    402403                /**
    403404                 * Sets the editor data. The data must be provided in raw format.
     405                 * @param {String} data HTML code to replace the curent content in the editor.
    404406                 * @example
    405407                 * CKEDITOR.instances.editor1.<b>setData( '&lt;p&gt;This is the editor data.&lt;/p&gt;' )</b>;
     
    413415                        this._.data = eventData.dataValue;
    414416
    415                         this.fire( 'afterSetData' );
     417                        this.fire( 'afterSetData', eventData );
     418                },
     419
     420                /**
     421                 * Inserts HTML into the currently selected position in the editor.
     422                 * @param {String} data HTML code to be inserted into the editor.
     423                 * @example
     424                 * CKEDITOR.instances.editor1.<b>insertHtml( '&lt;p&gt;This is a new paragraph.&lt;/p&gt;' )</b>
     425                 */
     426                insertHtml : function( data )
     427                {
     428                        var eventData = { insert : data };
     429                        this.fire( 'insertHtml', eventData );
     430                        this.fire( 'afterInsertHtml', eventData );
     431                        if ( eventData.html && eventData.html != this._.data )
     432                                this._.data = eventData.html;
    416433                },
    417434
  • CKEditor/branches/prototype/_source/plugins/editingblock/plugin.js

    r2352 r2615  
    6868                                                isHandlingData = true;
    6969                                                getMode( editor ).loadData( editor.getData() );
     70                                                isHandlingData = false;
     71                                        }
     72                                });
     73
     74                        editor.on( 'afterInsertHtml', function( evt )
     75                                {
     76                                        if ( !isHandlingData && editor.mode )
     77                                        {
     78                                                isHandlingData = true;
     79                                                if ( CKEDITOR.env.ie )
     80                                                        editor.document.$.selection.createRange().pasteHtml( evt.data.insert );
     81                                                else
     82                                                        editor.document.$.execCommand( 'inserthtml', false, evt.data.insert );
     83                                                evt.data.html = editor.document.getBody().getHtml();
    7084                                                isHandlingData = false;
    7185                                        }
  • CKEditor/branches/prototype/_source/plugins/smiley/plugin.js

    r2609 r2615  
    5656                {
    5757                        type : 'html',
    58                         onClick : function( evt ){},
     58                        onClick : function( evt )
     59                        {
     60                                var target = evt.data.getTarget(),
     61                                        targetName = target.getName();
     62                                if ( targetName != 'td' && targetName != 'img' )
     63                                        return;
     64
     65                                if ( targetName == 'td' )
     66                                        target = target.getChild(0).$;
     67                                else
     68                                        target = target.$;
     69
     70                                editor.insertHtml( '<img src="' + CKEDITOR.tools.htmlEncode( target.src ) + '" />' );
     71                                this.getDialog().hide();
     72                        },
    5973                        style : 'width: 100%; height: 100%; border-collapse: separate;'
    6074                },
  • CKEditor/branches/prototype/_source/plugins/sourcearea/plugin.js

    r2377 r2615  
    4444                                                        textarea = new CKEDITOR.dom.element( 'textarea' );
    4545                                                        textarea.setAttribute( 'dir', 'ltr' );
     46                                                        if ( !CKEDITOR.env.ie )
     47                                                        {
     48                                                                textarea.on( 'mousedown', function( evt )
     49                                                                        {
     50                                                                                evt = evt.data.$;
     51                                                                                if ( evt.stopPropagation )
     52                                                                                        evt.stopPropagation();
     53                                                                        } );
     54                                                        }
    4655                                                        textarea.addClass( 'cke_source' );
    4756                                                        textarea.setStyles({
  • CKEditor/branches/prototype/_source/themes/default/theme.js

    r2531 r2615  
    7070                        '</span>' ].join('') );
    7171
    72                 container.unselectable();
     72                container.getChild( [0, 0, 0] ).unselectable();
     73                container.getChild( [0, 0, 2] ).unselectable();
    7374
    7475                if ( elementMode == CKEDITOR.ELEMENT_MODE_REPLACE )
Note: See TracChangeset for help on using the changeset viewer.
© 2003 – 2012 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy