home *** CD-ROM | disk | FTP | other *** search
/ Chip 2003 February / Chip_2003-02_cd1.bin / zkuste / wmakeup / download / WWNxp.wmz / skin.js < prev    next >
Text File  |  2002-04-22  |  12KB  |  550 lines

  1. /*
  2.     Media Switcher & Usability Functions
  3.     ⌐ Copyright 2002 The Skins Factory, Inc. All Rights Reserved. May Not Be Reproduced Without Written Authorization.
  4.     http://www.theskinsfactory.com
  5.     info@theskinsfactory.com
  6. */
  7. /*
  8.     winXP version
  9. */
  10.  
  11. function checkMediaOnLoad(){
  12.     if(player){}
  13.     view.width = 0;
  14.     view.height = 0;
  15.     view.backgroundImage = "";
  16.  
  17.     if( ((player.Playstate==3)||(player.Playstate==2)) && (player.currentMedia.ImageSourceWidth>0)){
  18.         theme.currentViewID = 'videoView';
  19.         setView = "videoView";
  20.         loadGlobalPrefs();
  21.         killVis();
  22.     }else{
  23.         theme.currentViewID = 'mainView';
  24.         setView = "mainView";
  25.         loadGlobalPrefs();
  26.     }
  27. }
  28.  
  29. /*
  30.     remember the setView value
  31. */
  32.  
  33. function checkPlayerState(){
  34.     if (player){
  35.         switch (player.playState){
  36.             case 0:        //undefined
  37.                 visOn = visOn;
  38.                 //killVis();
  39.                 break;
  40.             case 1:        //stopped
  41.                 visOn = visOn;
  42.                 //killVis();
  43.                 break;
  44.             case 2:        //paused
  45.                 visButtonBack.moveTo(39,112,500);
  46.                 visNext.enabled = false;
  47.                 visPrev.enabled = false;
  48.                 visButton.enabled = false;
  49.                 visOn = visOn;
  50.                 break;
  51.             case 3:     //playing
  52.                 visButton.enabled = true;
  53.                 visOn = visOn;
  54.                 toggleVis();
  55.                 break;
  56.             case 6:        //buffering
  57.                 visOn = visOn;
  58.                 break;
  59.             case 7:        //waiting
  60.                 visOn = visOn;
  61.                 //killVis();
  62.                 break;
  63.             case 8:        //media ended
  64.                 visOn = visOn;
  65.                 //killVis();
  66.                 break;
  67.             case 9:        //Transitioning
  68.                 visOn = visOn;
  69.                 break;
  70.             case 10:    //Ready
  71.                 //killVis();
  72.                 break;
  73.             }
  74.         }
  75.  
  76.     if (!player.controls.isAvailable("Stop")) {
  77.         killVis();
  78.         visOn = visOn;
  79.         if(player.currentMedia.ImageSourceWidth>0){
  80.             theme.currentViewID = 'videoView';
  81.             setView = "videoView";
  82.         }
  83.     }
  84.     updateMetadata();
  85.     checkPlaylist();
  86. }
  87.  
  88. function checkPlayerMediaGlobal(){
  89.     if((player.OpenState == osMediaOpen) && (player.currentMedia.ImageSourceWidth>0)){
  90.         if((setView=="videoView")|| (player.playState==8&&setView=="videoView")){
  91.             setView = "videoView";
  92.         }else{
  93.             theme.currentViewID="videoView";
  94.             setView = "videoView";
  95.         }
  96.     }else if((player.currentMedia.duration > 0) && !(player.currentMedia.ImageSourceWidth>0)){
  97.         if(setView=="mainView"){
  98.             setView = "mainView";
  99.         }else{
  100.             theme.currentViewID="mainView";
  101.             setView = "mainView";
  102.         }
  103.     }else{
  104.         setView = setView;
  105.     }
  106. }
  107.  
  108.  
  109. function mainLoader(){
  110.     visEffects.currentEffectType = mediacenter.effectType;
  111.     visEffects.currentPreset = mediacenter.effectPreset;
  112.     loadMainPrefs();
  113.     checkPlayerState();
  114.     updateMetadata();
  115.     updateVolToolTip();
  116.     volume.value = player.settings.volume;
  117.  
  118. }
  119.  
  120. // && (player.currentMedia.ImageSourceWidth<0)
  121.  
  122. function killVis(){
  123.     visButton.enabled = false;
  124.     visDisabled();
  125. }
  126.  
  127. // new vis code -- default state is vis custom ani,
  128. // the preference is not set for startup -- so don't think it's a bug
  129.  
  130. visOn = 2;
  131. function toggleVis(){
  132.     switch(visOn){
  133.         case 1:
  134.             visEnabled();
  135.             visButton.enabled = true;
  136.             visPlayback.visible = false;
  137.             break;
  138.         case 2:
  139.             visPlayback.visible = true;
  140.             visButton.enabled = true;
  141.             visMask.visible = false;
  142.             visButtonBack.moveTo(39,112,500);
  143.             visNext.enabled = false;
  144.             visPrev.enabled = false;
  145.             visButton.upToolTip = "Vis Effects";
  146.             visPlayback.visible = true;
  147.             break;
  148.         case 3:
  149.             visPlayback.visible = false;
  150.             visDisabled();
  151.             visButton.enabled = true;
  152.             visOn = 0;
  153.             break;    
  154.     }
  155. }
  156.  
  157. function visEnabled(){
  158.     visMask.visible = true;
  159.     visButtonBack.moveTo(52,100,500);
  160.     visNext.enabled = true;
  161.     visPrev.enabled = true;
  162.     visButton.upToolTip = "Vis Effects";
  163. }
  164.  
  165. function visDisabled(){
  166.     visMask.visible = false;
  167.     visButtonBack.moveTo(39,112,500);
  168.     visNext.enabled = false;
  169.     visPrev.enabled = false;
  170.     visButton.upToolTip = "Vis Effects";
  171.     visPlayback.visible = false;
  172. }
  173.  
  174. function checkPlaylist(){
  175.     if(player.currentPlaylist.count <= 0){
  176.         playMe.visible = true;        
  177.     }
  178. }
  179.  
  180. function updateSeekToolTip(){
  181.     progressMain.toolTip = "Seek - [";
  182.     progressMain.toolTip += player.controls.currentPositionString;
  183.     progressMain.toolTip += "]";
  184. }
  185.  
  186. function updateVolToolTip(){
  187.     volume.toolTip = "Volume - [";
  188.     volume.toolTip += player.settings.volume;
  189.     volume.toolTip += "%]";
  190. }
  191.  
  192. function updateMetadata(){
  193.  
  194.     if(player.openState!=13) return;
  195.  
  196.     metadata.value = player.status;
  197.  
  198.     authorppl = player.currentmedia.getiteminfo("#author");
  199.  
  200.     if (authorppl == "") {
  201.         authorppl = player.currentmedia.getiteminfo("author");
  202.     }
  203.  
  204.     if (authorppl != "") {
  205.         authorppl += " - ";
  206.     }
  207.  
  208.     if (metadata.value != "") {
  209.         metadata.value += " - ";
  210.     }
  211.  
  212.     metadata.value += authorppl;
  213.     metadata.value += player.currentmedia.name;
  214.     metadata.scrolling = (metadata.textWidth>metadata.width);
  215.  
  216. }
  217.  
  218. function mainCloser(){
  219.     saveMainPrefs();
  220.     mediacenter.effectType = visEffects.currentEffectType;
  221.     mediacenter.effectPreset = visEffects.currentPreset;
  222. }
  223.  
  224. function loadMainPrefs(){
  225.     setView = "mainView";
  226.  
  227.     var _visOn = theme.loadPreference('visOn');
  228.  
  229.     if (_visOn != '--'){
  230.         if(_visOn==1){
  231.             visOn = 1;
  232.             toggleVis();
  233.         }else if(_visOn==2){
  234.             visOn = 2;
  235.             toggleVis();
  236.         }else{
  237.             visOn = 3;
  238.             toggleVis();
  239.         }
  240.     }
  241.  
  242. }
  243.  
  244. function saveMainPrefs() {
  245.     theme.savePreference('visOn',visOn);
  246. }
  247.  
  248. function volUpDown(event){
  249.     switch(event.keycode){
  250.         case 39:
  251.         case 38:
  252.             if(player.settings.volume < 95){
  253.                 player.settings.volume+=5;
  254.             }else{
  255.                 player.settings.volume = 100;
  256.             }
  257.             break;
  258.         case 37:
  259.         case 40:
  260.             if(player.settings.volume > 5){
  261.                 player.settings.volume-=5;
  262.             }else{
  263.                 player.settings.volume = 0;
  264.             }
  265.             break;        
  266.         }
  267.     }
  268.  
  269. function seekUpDown(event){
  270.     switch(event.keycode){
  271.         case 39:
  272.         case 38:
  273.             if(player.controls.currentPosition < 900){
  274.                 player.controls.currentPosition+=10;
  275.             }else{
  276.                 player.controls.currentPosition = 1000;
  277.             }
  278.             break;
  279.         case 37:
  280.         case 40:
  281.             if(player.controls.currentPosition > 10){
  282.                 player.controls.currentPosition-=10;
  283.             }else{
  284.                 player.controls.currentPosition = 0;
  285.             }
  286.             break;        
  287.         }
  288.     }
  289.  
  290. function viewResizer(event){
  291.     switch(event.keycode){
  292.         case 37:
  293.             view.width-=20;
  294.             mediacenter.videoZoom-=20;
  295.             break;
  296.         case 38:
  297.             view.height-=20
  298.             mediacenter.videoZoom-=20;
  299.             break;
  300.         case 39:
  301.             view.width+=20;
  302.             mediacenter.videoZoom+=20;
  303.             break;
  304.         case 40:
  305.             view.height+=20;
  306.             mediacenter.videoZoom+=20;
  307.             break;
  308.         }
  309. }
  310.  
  311. function toggleEQ(){
  312.     if("true"==theme.loadPreference("eqViewer")){
  313.         theme.savePreference("eqViewer", "false");
  314.         theme.closeView( "eqView" );
  315.         //eqButton.upToolTip = "Open EQ Settings";
  316.     }else{
  317.         theme.openView( "eqView" );
  318.         //eqButton.upToolTip = "Close EQ Settings";
  319.     }
  320. }
  321.  
  322. function videoZoom(){
  323.  
  324.     if(mediacenter.videoZoom < 76){
  325.         mediacenter.videoZoom = 100;
  326.     }else if(mediacenter.videoZoom <101){
  327.         mediacenter.videoZoom = 150;
  328.     }else if(mediacenter.videoZoom < 156){
  329.         mediacenter.videoZoom = 200;
  330.     }else if(mediacenter.videoZoom < 201){
  331.         mediacenter.videoZoom = 250;
  332.     }else{
  333.         mediacenter.videoZoom = 75;
  334.     }
  335.     SnapToVideo();
  336.     updateZoomToolTip();
  337. }
  338.  
  339. function updateZoomToolTip(){
  340.  
  341.     vidZoom.upToolTip = "Zoom - [current: ";
  342.     vidZoom.upToolTip += mediacenter.videoZoom;
  343.     vidZoom.upToolTip += "%] - [next: ";
  344.  
  345.     if(mediacenter.videoZoom < 76){
  346.         nextZoom = 100;
  347.     }else if(mediacenter.videoZoom <101){
  348.         nextZoom = 150;
  349.     }else if(mediacenter.videoZoom < 156){
  350.         nextZoom = 200;
  351.     }else if(mediacenter.videoZoom < 201){
  352.         nextZoom = 250;
  353.     }else{
  354.         nextZoom = 75;
  355.     }
  356.  
  357.     vidZoom.upToolTip += nextZoom;
  358.     vidZoom.upToolTip += "%]";
  359.  
  360. }
  361.  
  362. function SnapToVideo(){
  363.  
  364.     var zoom = mediacenter.videoZoom;
  365.     var viewWidth = (player.currentMedia.imageSourceWidth * (zoom/100.00));
  366.     var viewHeight = (player.currentMedia.imageSourceHeight * (zoom/100.00));
  367.  
  368.     view.width = viewWidth + 196;
  369.     view.height = viewHeight + 43;
  370.  
  371. //    view.width= player.currentMedia.imageSourceWidth + 196;
  372. //    view.height= player.currentMedia.imageSourceHeight + 41;
  373. }
  374.  
  375. leftDrawer = rightDrawer = 1;
  376.  
  377. function moveLeftVidDrawer(){
  378.     if(leftDrawer==1){
  379.         leftDrBot.moveTo(20,35,500);
  380.         leftDrTop.moveTo(20,0,500);    
  381.         leftDrawer = 2;
  382.         vidButtons.visible = true;
  383.         leftDrOpener.upToolTip = "Close Video Play Button Panel";
  384.     }else{
  385.         leftDrBot.moveTo(20,35,700);
  386.         leftDrTop.moveTo(20,0,700);
  387.         leftDrawer = 1;
  388.     }
  389. }
  390.  
  391. function moveLeftVidDrawerTop(){
  392.     if(leftDrawer==2){
  393.         leftDrBot.moveTo(20,-50,500);
  394.         leftDrTop.moveTo(20,-85,500);
  395.     }else{
  396.         leftDrBot.moveTo(20,82,400);
  397.         vidButtons.visible = false;
  398.         leftDrOpener.upToolTip = "Open Video Play Button Panel";
  399.     }
  400. }
  401.  
  402. function moveRighVidDrawer(){
  403.     if(rightDrawer==1){
  404.         rightDrBot.moveTo(0,35,500);
  405.         rightDrTop.moveTo(0,0,500);    
  406.         rightDrawer = 2;
  407.         sliderDrawer.visible = true;
  408.         rightDrOpener.upToolTip = "Close Video Control Panel";
  409.     }else{
  410.         rightDrBot.moveTo(0,35,700);
  411.         rightDrTop.moveTo(0,0,700);
  412.         rightDrawer = 1;
  413.     }
  414. }
  415.  
  416. function moveRightVidDrawerTop(){
  417.     if(rightDrawer==2){
  418.         rightDrBot.moveTo(0,-50,500);
  419.         rightDrTop.moveTo(0,-85,500);
  420.     }else{
  421.         rightDrBot.moveTo(0,82,400);
  422.         sliderDrawer.visible = false;
  423.         rightDrOpener.upToolTip = "Open Video Control Panel";
  424.     }
  425. }
  426.  
  427. function loadVidPrefs(){
  428.     setView = "videoView";
  429.     var _leftDrawer = theme.loadPreference('leftDrawer');
  430.     var _rightDrawer = theme.loadPreference('rightDrawer');
  431.  
  432.     if (_leftDrawer != '--'){
  433.         if(_leftDrawer==2){
  434.             moveLeftVidDrawer();
  435.         }
  436.     }
  437.  
  438.     if (_rightDrawer != '--'){
  439.         if(_rightDrawer==2){
  440.             moveRighVidDrawer();
  441.         }
  442.     }
  443.  
  444.     updateVolToolTip();
  445.     updateZoomToolTip();
  446. }
  447.  
  448. function saveVidPrefs(){
  449.     theme.savePreference('leftDrawer',leftDrawer);
  450.     theme.savePreference('rightDrawer',rightDrawer);
  451. }
  452.  
  453. function loadPlPrefs(){
  454.     theme.savePreference( 'plViewer', "true" );
  455.     var dwScale = theme.loadPreference( "PlaylistWidth" );
  456.  
  457.     if( "--" != dwScale )
  458.     {
  459.         plView.width = dwScale;
  460.     }
  461.     dwScale = theme.loadpreference( "PlaylistHeight" );
  462.  
  463.     if( "--" != dwScale )
  464.     {
  465.         plView.height = dwScale;
  466.     }
  467.  
  468.     plFrame.setColumnResizeMode( 0, "stretches" );
  469.     plFrame.setColumnResizeMode( 1, "autosizedata" );
  470.     plFrame.setColumnResizeMode( 2, "autosizedata" );
  471.     plFrame.setColumnResizeMode( 3, "autosizedata" );
  472. }
  473.  
  474. function savePlPrefs(){
  475.     theme.savepreference( "PlaylistWidth", plView.width );
  476.     theme.savepreference( "PlaylistHeight", plView.height );
  477. }
  478.  
  479. function togglePL(){
  480.     if("true"==theme.loadPreference("plViewer")){
  481.         theme.savePreference("plViewer", "false");
  482.         theme.closeView( "plView" );
  483.     }else{
  484.         theme.openView( "plView" );
  485.     }
  486. }
  487.  
  488. function toggleContent(){
  489.     if("true"==theme.loadPreference("contentViewer")){
  490.         theme.savePreference("contentViewer", "false");
  491.         theme.closeView( "contentView" );
  492.     }else{
  493.         theme.openView( "contentView" );
  494.     }
  495. }
  496.  
  497. function loadGlobalPrefs(){
  498.     if ("true"==theme.loadPreference("plViewer")){
  499.         theme.openView( 'plView' );
  500.     }
  501.  
  502.     if ("true"==theme.loadPreference("eqViewer")){
  503.         theme.openView( 'eqView' );
  504.     }
  505.  
  506.     if ("true"==theme.loadPreference("contentViewer")){
  507.         theme.openView( 'contentView' );
  508.     }
  509. }
  510.  
  511. function viewHotKeys(){
  512.     switch(event.keycode){
  513.         case 122:
  514.         case 90:
  515.             player.controls.previous();
  516.             break;
  517.         case 120:
  518.         case 88:
  519.             player.controls.play();
  520.             break;
  521.         case 99:
  522.         case 67:
  523.             player.controls.pause();
  524.             break;
  525.         case 118:
  526.         case 86:
  527.             player.controls.stop();
  528.             break;
  529.         case 98:
  530.         case 66:
  531.             player.controls.next();
  532.             break;
  533.         case 108:
  534.         case 76:
  535.             player.URL=theme.openDialog('FILE_OPEN','FILES_ALLMEDIA');
  536.             break;
  537.         case 80:
  538.         case 112:
  539.             togglePL();
  540.             break;
  541.         case 102:
  542.         case 70:
  543.             if((setView=="videoView")&&player.PlayState==3){
  544.                 videoZoom();
  545.             }
  546.             break;
  547.  
  548.     }
  549. }
  550.