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

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: fcktoolbarfontformatcombo.js
  14.  *  FCKToolbarPanelButton Class: Handles the Fonts combo selector.
  15.  * 
  16.  * File Authors:
  17.  *  Frederico Caldeira Knabben (fredck@fckeditor.net)
  18.  */
  19. var FCKToolbarFontFormatCombo = function( tooltip, style )
  20. {
  21. this.CommandName = 'FontFormat' ;
  22. this.Label = this.GetLabel() ;
  23. this.Tooltip = tooltip ? tooltip : this.Label ;
  24. this.Style = style ? style : FCK_TOOLBARITEM_ICONTEXT ;
  25. this.NormalLabel = 'Normal' ;
  26. this.PanelWidth = 190 ;
  27. }
  28. // Inherit from FCKToolbarSpecialCombo.
  29. FCKToolbarFontFormatCombo.prototype = new FCKToolbarSpecialCombo ;
  30. FCKToolbarFontFormatCombo.prototype.GetLabel = function()
  31. {
  32. return FCKLang.FontFormat ;
  33. }
  34. FCKToolbarFontFormatCombo.prototype.CreateItems = function( targetSpecialCombo )
  35. {
  36. // Add the Editor Area CSS to the panel to create a realistic preview.
  37. FCKTools.AppendStyleSheet( targetSpecialCombo._Panel.Document, FCKConfig.ToolbarComboPreviewCSS ) ;
  38. // Get the format names from the language file.
  39. var aNames = FCKLang['FontFormats'].split(';') ;
  40. var oNames = {
  41. p : aNames[0],
  42. pre : aNames[1],
  43. address : aNames[2],
  44. h1 : aNames[3],
  45. h2 : aNames[4],
  46. h3 : aNames[5],
  47. h4 : aNames[6],
  48. h5 : aNames[7],
  49. h6 : aNames[8],
  50. div : aNames[9]
  51. } ;
  52. // Get the available formats from the configuration file.
  53. var aTags = FCKConfig.FontFormats.split(';') ;
  54. for ( var i = 0 ; i < aTags.length ; i++ )
  55. {
  56. // Support for DIV in Firefox has been reintroduced on version 2.2.
  57. // if ( aTags[i] == 'div' && FCKBrowserInfo.IsGecko )
  58. // continue ;
  59. var sTag = aTags[i] ;
  60. var sLabel = oNames[sTag] ;
  61. if ( sTag == 'p' )
  62. this.NormalLabel = sLabel ;
  63. this._Combo.AddItem( sTag, '<div class="BaseFont"><' + sTag + '>' + sLabel + '</' + sTag + '></div>', sLabel ) ;
  64. }
  65. }
  66. if ( FCKBrowserInfo.IsIE )
  67. {
  68. FCKToolbarFontFormatCombo.prototype.RefreshActiveItems = function( combo, value )
  69. {
  70. // FCKDebug.Output( 'FCKToolbarFontFormatCombo Value: ' + value ) ;
  71. // IE returns normal for DIV and P, so to avoid confusion, we will not show it if normal.
  72. if ( value == this.NormalLabel )
  73. {
  74. if ( combo.Label != '&nbsp;' )
  75. combo.DeselectAll(true) ;
  76. }
  77. else
  78. {
  79. if ( this._LastValue == value )
  80. return ;
  81. combo.SelectItemByLabel( value, true ) ;
  82. }
  83. this._LastValue = value ;
  84. }
  85. }