fcktoolbarbutton.js
上传用户:li2971742
上传日期:2021-11-18
资源大小:39096k
文件大小:2k
源码类别:

OA系统

开发平台:

C#

  1. /*
  2.  * FCKeditor - The text editor for internet
  3.  * Copyright (C) 2003-2006 Frederico Caldeira Knabben
  4.  * 
  5.  * Licensed under the terms of the GNU Lesser General Public License:
  6.  *  http://www.opensource.org/licenses/lgpl-license.php
  7.  * 
  8.  * For further information visit:
  9.  *  http://www.fckeditor.net/
  10.  * 
  11.  * "Support Open Source software. What about a donation today?"
  12.  * 
  13.  * File Name: fcktoolbarbutton.js
  14.  *  FCKToolbarButton Class: represents a button in the toolbar.
  15.  * 
  16.  * File Authors:
  17.  *  Frederico Caldeira Knabben (fredck@fckeditor.net)
  18.  */
  19. var FCKToolbarButton = function( commandName, label, tooltip, style, sourceView, contextSensitive, icon )
  20. {
  21. this.CommandName = commandName ;
  22. this.Label = label ;
  23. this.Tooltip = tooltip ;
  24. this.Style = style ;
  25. this.SourceView = sourceView ? true : false ;
  26. this.ContextSensitive = contextSensitive ? true : false ;
  27. if ( icon == null )
  28. this.IconPath = FCKConfig.SkinPath + 'toolbar/' + commandName.toLowerCase() + '.gif' ;
  29. else if ( typeof( icon ) == 'number' )
  30. this.IconPath = [ FCKConfig.SkinPath + 'fck_strip.gif', 16, icon ] ;
  31. }
  32. FCKToolbarButton.prototype.Create = function( targetElement )
  33. {
  34. this._UIButton = new FCKToolbarButtonUI( this.CommandName, this.Label, this.Tooltip, this.IconPath, this.Style ) ;
  35. this._UIButton.OnClick = this.Click ;
  36. this._UIButton._ToolbarButton = this ;
  37. this._UIButton.Create( targetElement ) ;
  38. }
  39. FCKToolbarButton.prototype.RefreshState = function()
  40. {
  41. // Gets the actual state.
  42. var eState = FCK.ToolbarSet.CurrentInstance.Commands.GetCommand( this.CommandName ).GetState() ;
  43. // If there are no state changes than do nothing and return.
  44. if ( eState == this._UIButton.State ) return ;
  45. // Sets the actual state.
  46. this._UIButton.ChangeState( eState ) ;
  47. }
  48. FCKToolbarButton.prototype.Click = function()
  49. {
  50. var oToolbarButton = this._ToolbarButton || this ;
  51. FCK.ToolbarSet.CurrentInstance.Commands.GetCommand( oToolbarButton.CommandName ).Execute() ;
  52. }
  53. FCKToolbarButton.prototype.Enable = function()
  54. {
  55. this.RefreshState() ;
  56. }
  57. FCKToolbarButton.prototype.Disable = function()
  58. {
  59. // Sets the actual state.
  60. this._UIButton.ChangeState( FCK_TRISTATE_DISABLED ) ;
  61. }