Index: editor/_source/classes/fckcontextmenu.js
===================================================================
--- editor/_source/classes/fckcontextmenu.js	(revision 1595)
+++ editor/_source/classes/fckcontextmenu.js	(working copy)
@@ -57,9 +57,13 @@
 	}
 }
 
-FCKContextMenu.prototype.AddItem = function( name, label, iconPathOrStripInfoArrayOrIndex, isDisabled )
+/**
+ The tag parameter is just a value that will be send to the command that is executed, so it's possible 
+ to reuse the same command for several items just by assigning differen tags for each one.
+*/
+FCKContextMenu.prototype.AddItem = function( name, label, iconPathOrStripInfoArrayOrIndex, isDisabled, tag )
 {
-	var oItem = this._MenuBlock.AddItem( name, label, iconPathOrStripInfoArrayOrIndex, isDisabled) ;
+	var oItem = this._MenuBlock.AddItem( name, label, iconPathOrStripInfoArrayOrIndex, isDisabled, tag) ;
 	this._Redraw = true ;
 	return oItem ;
 }
Index: editor/_source/classes/fckmenublock.js
===================================================================
--- editor/_source/classes/fckmenublock.js	(revision 1595)
+++ editor/_source/classes/fckmenublock.js	(working copy)
@@ -33,9 +33,9 @@
 	return this._Items.length ;
 }
 
-FCKMenuBlock.prototype.AddItem = function( name, label, iconPathOrStripInfoArrayOrIndex, isDisabled )
+FCKMenuBlock.prototype.AddItem = function( name, label, iconPathOrStripInfoArrayOrIndex, isDisabled, tag )
 {
-	var oItem = new FCKMenuItem( this, name, label, iconPathOrStripInfoArrayOrIndex, isDisabled ) ;
+	var oItem = new FCKMenuItem( this, name, label, iconPathOrStripInfoArrayOrIndex, isDisabled, tag ) ;
 
 	oItem.OnClick		= FCKTools.CreateEventListener( FCKMenuBlock_Item_OnClick, this ) ;
 	oItem.OnActivate	= FCKTools.CreateEventListener( FCKMenuBlock_Item_OnActivate, this ) ;
Index: editor/_source/classes/fckmenuitem.js
===================================================================
--- editor/_source/classes/fckmenuitem.js	(revision 1595)
+++ editor/_source/classes/fckmenuitem.js	(working copy)
@@ -21,7 +21,7 @@
  * Defines and renders a menu items in a menu block.
  */
 
-var FCKMenuItem = function( parentMenuBlock, name, label, iconPathOrStripInfoArray, isDisabled )
+var FCKMenuItem = function( parentMenuBlock, name, label, iconPathOrStripInfoArray, isDisabled, tag )
 {
 	this.Name		= name ;
 	this.Label		= label || name ;
@@ -32,6 +32,7 @@
 	this.SubMenu			= new FCKMenuBlockPanel() ;
 	this.SubMenu.Parent		= parentMenuBlock ;
 	this.SubMenu.OnClick	= FCKTools.CreateEventListener( FCKMenuItem_SubMenu_OnClick, this ) ;
+	this.Tag = tag ;
 
 	if ( FCK.IECleanup )
 		FCK.IECleanup.AddItem( this, FCKMenuItem_Cleanup ) ;
@@ -39,10 +40,10 @@
 
 FCKMenuItem.prototype.TypeName = 'FCKMenuItem' ;		// @Packager.RemoveLine
 
-FCKMenuItem.prototype.AddItem = function( name, label, iconPathOrStripInfoArrayOrIndex, isDisabled )
+FCKMenuItem.prototype.AddItem = function( name, label, iconPathOrStripInfoArrayOrIndex, isDisabled, tag )
 {
 	this.HasSubMenu = true ;
-	return this.SubMenu.AddItem( name, label, iconPathOrStripInfoArrayOrIndex, isDisabled ) ;
+	return this.SubMenu.AddItem( name, label, iconPathOrStripInfoArrayOrIndex, isDisabled, tag ) ;
 }
 
 FCKMenuItem.prototype.AddSeparator = function()
Index: editor/_source/internals/fck_contextmenu.js
===================================================================
--- editor/_source/internals/fck_contextmenu.js	(revision 1595)
+++ editor/_source/internals/fck_contextmenu.js	(working copy)
@@ -325,5 +325,5 @@
 function FCK_ContextMenu_OnItemClick( item )
 {
 	FCK.Focus() ;
-	FCKCommands.GetCommand( item.Name ).Execute() ;
+	FCKCommands.GetCommand( item.Name ).Execute( item.Tag ) ;
 }
