Changeset 2615


Ignore:
Timestamp:
11/03/08 08:02:16 (6 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