Ticket #5012: 5012_2.patch

File 5012_2.patch, 1.8 KB (added by Frederico Caldeira Knabben, 14 years ago)
  • _source/plugins/menu/plugin.js

     
    88        beforeInit : function( editor )
    99        {
    1010                var groups = editor.config.menu_groups.split( ',' ),
    11                         groupsOrder = {};
     11                        groupsOrder = editor._.menuGroups = {},
     12                        menuItems = editor._.menuItems = {};
    1213
    1314                for ( var i = 0 ; i < groups.length ; i++ )
    1415                        groupsOrder[ groups[ i ] ] = i + 1;
    1516
    16                 editor._.menuGroups = groupsOrder;
    17                 editor._.menuItems = {};
    18         },
     17                editor.addMenuGroup = function( name, order )
     18                        {
     19                                groupsOrder[ name ] = order || 100;
     20                        };
    1921
    20         requires : [ 'floatpanel' ]
    21 });
     22                editor.addMenuItem = function( name, definition )
     23                        {
     24                                if ( groupsOrder[ definition.group ] )
     25                                        menuItems[ name ] = new CKEDITOR.menuItem( this, name, definition );
     26                        };
    2227
    23 CKEDITOR.tools.extend( CKEDITOR.editor.prototype,
    24 {
    25         addMenuGroup : function( name, order )
    26         {
    27                 this._.menuGroups[ name ] = order || 100;
    28         },
     28                editor.addMenuItems = function( definitions )
     29                        {
     30                                for ( var itemName in definitions )
     31                                {
     32                                        this.addMenuItem( itemName, definitions[ itemName ] );
     33                                }
     34                        };
    2935
    30         addMenuItem : function( name, definition )
    31         {
    32                 if ( this._.menuGroups[ definition.group ] )
    33                         this._.menuItems[ name ] = new CKEDITOR.menuItem( this, name, definition );
     36                editor.getMenuItem = function( name )
     37                        {
     38                                return menuItems[ name ];
     39                        };
    3440        },
    3541
    36         addMenuItems : function( definitions )
    37         {
    38                 for ( var itemName in definitions )
    39                 {
    40                         this.addMenuItem( itemName, definitions[ itemName ] );
    41                 }
    42         },
    43 
    44         getMenuItem : function( name )
    45         {
    46                 return this._.menuItems[ name ];
    47         }
     42        requires : [ 'floatpanel' ]
    4843});
    4944
    5045(function()
© 2003 – 2022, CKSource sp. z o.o. sp.k. All rights reserved. | Terms of use | Privacy policy