home *** CD-ROM | disk | FTP | other *** search
/ CyberMycha 2003 October / cmycha200310.iso / NHL2004 / NHL2004Demo.exe / fe / nhl / htc / button / ControllerConfigButton.htc < prev    next >
Text File  |  2003-08-20  |  3KB  |  105 lines

  1. <!-- Copyright (c) 2002 Electronic Arts Inc. All rights reserved. -->
  2.  
  3. <PUBLIC:COMPONENT lightweight=true>
  4.     <PUBLIC:PROPERTY    NAME="imgSrc"            />
  5.     <ATTACH   EVENT="ondocumentready"     HANDLER="doInit"        />
  6.     <ATTACH   EVENT="onmousedown"       HANDLER="doMouseDown"   />
  7.     <ATTACH   EVENT="onmouseenter"      HANDLER="doMouseEnter"  />
  8.     <ATTACH   EVENT="onmouseleave"      HANDLER="doMouseLeave"  />
  9.     <ATTACH   EVENT="onmouseup"         HANDLER="doMouseUp"     />
  10.     <ATTACH      EVENT="onselectstart"        HANDLER="cancelCursorSelect"    />    
  11.  
  12.     <script language="javascript">
  13.     var aButton         = new Array();
  14.     var strImgSrc       = (imgSrc != null) ? imgSrc : "../../NHL/images/button/controller_config_nml.gif";
  15.     var strImgPath;
  16.     function doInit()
  17.     {
  18.         var strImgName = strImgSrc.split('/');
  19.         strImgName.reverse();
  20.         strImgName = strImgName[0];
  21.         strImgPath = strImgSrc.substr(0, strImgSrc.length - strImgName.length);
  22.         createImg( "normal"  , strImgName );
  23.         createImg( "hover"   , strImgName.replace(/nml/ , "hov" ));
  24.         createImg( "down"    , strImgName.replace(/nml/ , "dwn"));
  25.     
  26.         CustomDefault('nml-text-color',    'nmlTextColor',    'black');
  27.         CustomDefault('dwn-text-color',    'dwnTextColor',    'white');
  28.         CustomDefault('hov-text-color',    'hovTextColor',    'white');            
  29.     }
  30.     function CustomDefault(sCSSName, sScriptName, sDefault)
  31.     {
  32.        if (currentStyle[sCSSName] == null)
  33.        {
  34.            style[sCSSName] = sDefault;
  35.        }
  36.        else style[sCSSName] = currentStyle[sCSSName];
  37.        
  38.        style[sScriptName] = style[sCSSName];
  39.     }
  40.     function createImg( sId , sImgName )
  41.     {
  42.         var oImg = new Image();
  43.         oImg.src = strImgPath + sImgName;
  44.         aButton[ sId ] = oImg;
  45.     }
  46.     function doMouseEnter()
  47.     {
  48.         doColorChange('white' , 'hov');
  49.     }
  50.     
  51.     function doMouseLeave()
  52.     {
  53.         doColorChange('black' , 'nml');
  54.     }
  55.     
  56.     
  57.     function doMouseDown()
  58.     {
  59.         doColorChange( 'white' , 'dwn');
  60.     }
  61.     
  62.     function doMouseUp()
  63.     {  
  64.     
  65.         doColorChange('#FFDF60' , 'hov');
  66.     }
  67.     
  68.     
  69.     function doColorChange(sColor , sState )
  70.     {
  71.         srcEl                             = event.srcElement;
  72.         if(srcEl.id.match(/_/)) srcEl     = srcEl.parentElement;
  73.         btnText                            = element.document.all[ srcEl.id + "_text" ];
  74.         btnImg                             = element.document.all[ srcEl.id + "_img" ];
  75.         if(btnImg != null)
  76.         {
  77.             if(sState.match(/nml/))btnImg.src  = aButton[ "normal" ].src; 
  78.                if(sState.match(/hov/))btnImg.src  = aButton[ "hover" ].src;
  79.                if(sState.match(/dwn/))btnImg.src  = aButton[ "down" ].src;        
  80.         }
  81.         switch( sState )
  82.         {
  83.             case "dwn":
  84.             if(btnText != null)
  85.                 btnText.style.color = element.currentStyle.dwnTextColor;
  86.                 break;
  87.             case "nml":
  88.             if(btnText != null)
  89.                 btnText.style.color = element.currentStyle.nmlTextColor;
  90.                 break;
  91.             case "hov":
  92.             if(btnText != null)
  93.                 btnText.style.color = element.currentStyle.hovTextColor;
  94.                 break;
  95.         }
  96.     }
  97.     
  98.     function cancelCursorSelect() 
  99.     { 
  100.         event.cancelBubble  = true;
  101.         event.returnValue   = false;
  102.     }
  103.     </script>
  104.  
  105. </PUBLIC:COMPONENT>