[ Index ]
 

Code source de GeekLog 1.4.1

Accédez au Source d'autres logiciels libres

title

Body

[fermer]

/public_html/fckeditor/editor/_source/classes/ -> fcktoolbarspecialcombo.js (source)

   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: fcktoolbarspecialcombo.js
  14   *     FCKToolbarSpecialCombo Class: This is a "abstract" base class to be used
  15   *     by the special combo toolbar elements like font name, font size, paragraph format, etc...
  16   *     
  17   *     The following properties and methods must be implemented when inheriting from
  18   *     this class:
  19   *         - Property:    CommandName                            [ The command name to be executed ]
  20   *         - Method:    GetLabel()                            [ Returns the label ]
  21   *         -            CreateItems( targetSpecialCombo )    [ Add all items in the special combo ]
  22   * 
  23   * File Authors:
  24   *         Frederico Caldeira Knabben (fredck@fckeditor.net)
  25   */
  26  
  27  var FCKToolbarSpecialCombo = function()
  28  {
  29      this.SourceView            = false ;
  30      this.ContextSensitive    = true ;
  31  }
  32  
  33  
  34  function FCKToolbarSpecialCombo_OnSelect( itemId, item )
  35  {
  36      FCK.ToolbarSet.CurrentInstance.Commands.GetCommand( this.CommandName ).Execute( itemId, item ) ;
  37  }
  38  
  39  FCKToolbarSpecialCombo.prototype.Create = function( targetElement )
  40  {
  41      this._Combo = new FCKSpecialCombo( this.GetLabel(), this.FieldWidth, this.PanelWidth, this.PanelMaxHeight, FCKBrowserInfo.IsIE ? window : FCKTools.GetElementWindow( targetElement ).parent ) ;
  42      
  43      /*
  44      this._Combo.FieldWidth        = this.FieldWidth        != null ? this.FieldWidth        : 100 ;
  45      this._Combo.PanelWidth        = this.PanelWidth        != null ? this.PanelWidth        : 150 ;
  46      this._Combo.PanelMaxHeight    = this.PanelMaxHeight    != null ? this.PanelMaxHeight    : 150 ;
  47      */
  48      
  49      //this._Combo.Command.Name = this.Command.Name;
  50  //    this._Combo.Label    = this.Label ;
  51      this._Combo.Tooltip    = this.Tooltip ;
  52      this._Combo.Style    = this.Style ;
  53      
  54      this.CreateItems( this._Combo ) ;
  55  
  56      this._Combo.Create( targetElement ) ;
  57  
  58      this._Combo.CommandName = this.CommandName ;
  59      
  60      this._Combo.OnSelect = FCKToolbarSpecialCombo_OnSelect ;
  61  }
  62  
  63  function FCKToolbarSpecialCombo_RefreshActiveItems( combo, value )
  64  {
  65      combo.DeselectAll() ;
  66      combo.SelectItem( value ) ;
  67      combo.SetLabelById( value ) ;
  68  }
  69  
  70  FCKToolbarSpecialCombo.prototype.RefreshState = function()
  71  {
  72      // Gets the actual state.
  73      var eState ;
  74      
  75  //    if ( FCK.EditMode == FCK_EDITMODE_SOURCE && ! this.SourceView )
  76  //        eState = FCK_TRISTATE_DISABLED ;
  77  //    else
  78  //    {
  79          var sValue = FCK.ToolbarSet.CurrentInstance.Commands.GetCommand( this.CommandName ).GetState() ;
  80  
  81  //        FCKDebug.Output( 'RefreshState of Special Combo "' + this.TypeOf + '" - State: ' + sValue ) ;
  82  
  83          if ( sValue != FCK_TRISTATE_DISABLED )
  84          {
  85              eState = FCK_TRISTATE_ON ;
  86              
  87              if ( this.RefreshActiveItems )
  88                  this.RefreshActiveItems( this._Combo, sValue ) ;
  89              else
  90              {
  91                  if ( this._LastValue != sValue )
  92                  {
  93                      this._LastValue = sValue ;
  94                      FCKToolbarSpecialCombo_RefreshActiveItems( this._Combo, sValue ) ;
  95                  }
  96              }
  97          }
  98          else
  99              eState = FCK_TRISTATE_DISABLED ;
 100  //    }
 101      
 102      // If there are no state changes then do nothing and return.
 103      if ( eState == this.State ) return ;
 104      
 105      if ( eState == FCK_TRISTATE_DISABLED )
 106      {
 107          this._Combo.DeselectAll() ;
 108          this._Combo.SetLabel( '' ) ;
 109      }
 110  
 111      // Sets the actual state.
 112      this.State = eState ;
 113  
 114      // Updates the graphical state.
 115      this._Combo.SetEnabled( eState != FCK_TRISTATE_DISABLED ) ;
 116  }
 117  
 118  FCKToolbarSpecialCombo.prototype.Enable = function()
 119  {
 120      this.RefreshState() ;
 121  }
 122  
 123  FCKToolbarSpecialCombo.prototype.Disable = function()
 124  {
 125      this.State = FCK_TRISTATE_DISABLED ;
 126      this._Combo.DeselectAll() ;
 127      this._Combo.SetLabel( '' ) ;
 128      this._Combo.SetEnabled( false ) ;
 129  }


Généré le : Wed Nov 21 12:27:40 2007 par Balluche grâce à PHPXref 0.7
  Clicky Web Analytics