home *** CD-ROM | disk | FTP | other *** search
/ Chip 2003 February / Chip_2003-02_cd1.bin / zkuste / wmakeup / download / QuantumRedshiftWMPSkin.wmz / quantum.js < prev    next >
Text (UTF-16)  |  2002-10-23  |  25KB  |  641 lines

  1. /*
  2.     http://www.theskinsfactory.com
  3.     info@theskinsfactory.com
  4. */
  5.  
  6. var shutterStatus = false;
  7. var frameCount = 1;
  8. var startIntro = true;
  9.  
  10. function introFrames(){
  11.     if(!shutterStatus){
  12.         frameCount++
  13.         shutterSub.backgroundImage = "shutter_f0" + frameCount + ".png";
  14.         view.timerInterval = 80;
  15.         if(frameCount==7){
  16.             view.timerInterval = 0
  17.             shutterStatus = !shutterStatus;
  18.             if(startIntro){
  19.                 introSub.backgroundImage = "intro_anim.gif";
  20.                 startIntro = false;
  21.                 }
  22.         }
  23.  
  24.     }else{
  25.         frameCount--
  26.         shutterSub.backgroundImage = "shutter_f0" + frameCount + ".png";
  27.         view.timerInterval = 80;
  28.         if(frameCount==1){
  29.             view.timerInterval = 0
  30.             //introSub.backgroundImage = "intro_anim.gif";
  31.             shutterStatus = !shutterStatus;
  32.         }
  33.     }
  34. }
  35.  
  36. var shutterFrames = 7
  37.  
  38. function shutterToggle(){
  39.     shutterFrames--
  40.     mainView.timerInterval = 90;
  41.     shutterSub.backgroundImage = "shutter_f0" + shutterFrames + ".png";
  42.     if(shutterFrames==0){
  43.         view.timerInterval = 0
  44.     }
  45. }
  46.  
  47. function newTimer(){
  48.     mainView.onTimer = shutterToggle();
  49. }
  50.  
  51. function mainStartUp(){
  52. //    volume.value = player.settings.volume;
  53.     loadMainPrefs();
  54.     checkPlayerState();
  55. }
  56.  
  57. function checkPlayerState(){
  58.  
  59.     if (player){
  60.         switch (player.playState){
  61.             case 0:        //undefined
  62.                 
  63.                 break;
  64.             case 1:        //stopped
  65.  
  66.                 break;
  67.             case 2:        //paused
  68.                 
  69.                 break;
  70.             case 3:     //playing
  71.                 if(player.currentMedia.ImageSourceWidth>0){
  72.                     theme.openView('videoView');
  73.                     if("true"==theme.loadPreference("visViewer")){
  74.                         theme.savePreference("visViewer", "false");
  75.                         theme.closeView( "visView" );
  76.                     }
  77.                     break
  78.                 }
  79.                 
  80.                 break;
  81.             case 6:        //buffering
  82.                 
  83.                 break;
  84.             case 7:        //waiting
  85.                 
  86.                 break;
  87.             case 8:        //media ended
  88.                 
  89.                 break;
  90.             case 9:        //Transitioning
  91.                 
  92.                 break;
  93.             case 10:    //Ready
  94.                 
  95.                 break;
  96.             }
  97.             
  98.         }
  99.  
  100.     if (!player.controls.isAvailable("Stop")) {
  101.         
  102.     }
  103.     updateMetadata();
  104. }
  105.  
  106. // metadata
  107.  
  108. function updateMetadata(){
  109.  
  110.     if(player.openState!=13) return;
  111.  
  112.     metadata.value = player.status;
  113.  
  114.     authorppl = player.currentmedia.getiteminfo("#author");
  115.  
  116.     if (authorppl == "") {
  117.         authorppl = player.currentmedia.getiteminfo("author");
  118.     }
  119.  
  120.     if (authorppl != "") {
  121.         authorppl += " - ";
  122.     }
  123.  
  124.     if (metadata.value != "") {
  125.         metadata.value += " - ";
  126.     }
  127.  
  128.     metadata.value += authorppl;
  129.     metadata.value += player.currentmedia.name;
  130.     metadata.scrolling = (metadata.textWidth>metadata.width);
  131.     
  132. }
  133.  
  134. // button and hotkey definitions
  135.  
  136. // open file
  137. function openFile(){
  138.     var media = theme.openDialog('FILE_OPEN','FILES_ALLMEDIA');
  139.     if (media) {
  140.         player.URL = media;
  141.         player.controls.play();
  142.     }
  143. }
  144.  
  145. function viewHotKeys(){
  146.     switch(event.keycode){
  147.         case 122:
  148.         case 90:
  149.             player.controls.previous();
  150.             break;
  151.         case 120:
  152.         case 88:
  153.             player.controls.play();
  154.             break;
  155.         case 99:
  156.         case 67:
  157.             player.controls.pause();
  158.             break;
  159.         case 118:
  160.         case 86:
  161.             player.controls.stop();
  162.             break;
  163.         case 98:
  164.         case 66:
  165.             player.controls.next();
  166.             break;
  167.         case 108:
  168.         case 76:
  169.             openFile();
  170.             break;
  171.         case 80:
  172.         case 102:
  173.         case 70:
  174.  
  175.             break;
  176.  
  177.     }
  178. }
  179.  
  180. function viewResizer(event){
  181.     switch(event.keycode){
  182.         case 37:
  183.             view.width-=20;
  184.             break;
  185.         case 38:
  186.             view.height-=20
  187.             break;
  188.         case 39:
  189.             view.width+=20;
  190.             break;
  191.         case 40:
  192.             view.height+=20;
  193.             break;
  194.         }
  195. }
  196.  
  197. function volKey(event){
  198.     switch(event.keycode){
  199.         case 39:
  200.         case 38:
  201.             if(player.settings.volume < 95){
  202.                 player.settings.volume+=5;
  203.             }else{
  204.                 player.settings.volume = 100;
  205.             }
  206.             break;
  207.         case 37:
  208.         case 40:
  209.             if(player.settings.volume > 5){
  210.                 player.settings.volume-=5;
  211.             }else{
  212.                 player.settings.volume = 0;
  213.             }
  214.             break;        
  215.         }
  216.         mute.down = false;
  217.         player.settings.mute = false;
  218.     }
  219.  
  220. function updateToolTip(id,button,tip){
  221.     if("true"==theme.loadPreference( id )){
  222.         eval( button +".upToolTip = 'Hide " + tip + "'" );
  223.     }else{
  224.         eval( button +".upToolTip = 'Show " + tip + "'" );
  225.     }
  226. }
  227.  
  228. function updateVolToolTip(){
  229.     volume.toolTip = "";
  230.     volume.toolTip += player.settings.volume;
  231. }
  232.  
  233. function updateShuffRep(){
  234.     if(player.settings.getMode('shuffle')){
  235.         shuffleButton.down = true;
  236.     }else{
  237.         shuffleButton.down = false;
  238.     }
  239.  
  240.     if(player.settings.getMode('loop')){
  241.         loopButton.down = true;
  242.     }else{
  243.         loopButton.down = false;
  244.     }
  245. }
  246.  
  247. // view toggle 
  248.  
  249. function toggleView(name,id){
  250.     if("true"==theme.loadPreference(id)){
  251.         theme.savePreference(id, "false");
  252.         theme.closeView( name );
  253.     }else{
  254.         theme.openView( name );
  255.     }
  256. }
  257.  
  258. function closeView(id){
  259.     theme.savePreference(id, "false");
  260.     if( id=="vidViewer" && player.currentMedia.ImageSourceWidth>0 ){
  261.         player.controls.stop();
  262.     }
  263.     view.close();
  264. }
  265.  
  266. // preferences
  267.  
  268. function loadMainPrefs(){
  269.  
  270.     if ("true"==theme.loadPreference("plViewer")){
  271.         theme.openView( 'plView' );
  272.     }
  273.  
  274.     if ("true"==theme.loadPreference("visViewer")){
  275.         theme.openView( 'visView' );
  276.     }
  277.  
  278.     if ("true"==theme.loadPreference("eqViewer")){
  279.         theme.openView( 'eqView' );
  280.     }
  281.  
  282.     if ("true"==theme.loadPreference("infoViewer")){
  283.         theme.openView( 'infoView' );
  284.     }
  285. }
  286.  
  287. function saveMainPrefs() {
  288.  
  289. }
  290.  
  291. function mainShutDown(){
  292.     saveMainPrefs();
  293. }
  294.  
  295. // playlist
  296. function loadPlPrefs(){
  297.     theme.savePreference( 'plViewer', "true" );
  298.  
  299.     var dwScale = theme.loadPreference( "PlaylistWidth" );
  300.  
  301.     if( "--" != dwScale )
  302.     {
  303.         plView.width = dwScale;
  304.     }
  305.     dwScale = theme.loadpreference( "PlaylistHeight" );
  306.  
  307.     if( "--" != dwScale )
  308.     {
  309.         plView.height = dwScale;
  310.     }
  311.  
  312.     plFrame.setColumnResizeMode( 0, "stretches" );
  313.     plFrame.setColumnResizeMode( 1, "autosizedata" );
  314.     plFrame.setColumnResizeMode( 2, "autosizedata" );
  315.     plFrame.setColumnResizeMode( 3, "autosizedata" );
  316.  
  317. }
  318.  
  319. function savePlPrefs(){
  320.     theme.savepreference( "PlaylistWidth", plView.width );
  321.     theme.savepreference( "PlaylistHeight", plView.height );
  322. }
  323.  
  324. // equalizer
  325. function loadEQPrefs(){
  326.     theme.savePreference( 'eqViewer', "true" );
  327. }
  328.  
  329. // visualizations
  330. function loadVisPrefs(){
  331.     theme.savePreference( 'visViewer', "true" );
  332.     visEffects.currentEffectType = mediacenter.effectType;
  333.     visEffects.currentPreset = mediacenter.effectPreset;
  334.  
  335.     var dwScale = theme.loadPreference( "visWidth" );
  336.  
  337.     if( "--" != dwScale )
  338.     {
  339.         visView.width = dwScale;
  340.     }else{
  341.         visView.width = 383;
  342.     }
  343.     dwScale = theme.loadpreference( "visHeight" );
  344.  
  345.     if( "--" != dwScale )
  346.     {
  347.         visView.height = dwScale;
  348.     }else{
  349.         visView.width = 358;
  350.     }
  351.     
  352.     checkVisualsPlayerState()
  353. }
  354.  
  355. function saveVisPrefs(){
  356.     mediacenter.effectType = visEffects.currentEffectType;
  357.     mediacenter.effectPreset = visEffects.currentPreset;
  358.     theme.savepreference( "visWidth", visView.width );
  359.     theme.savepreference( "visHeight", visView.height );
  360. }
  361.  
  362. function checkVisualsPlayerState(){
  363.  
  364.     if (player){
  365.         switch (player.playState){
  366.             case 0:        //undefined
  367.                 
  368.                 break;
  369.             case 1:        //stopped
  370.  
  371.                 break;
  372.             case 2:        //paused
  373.  
  374.                 break;
  375.             case 3:     //playing
  376.                 //visMask.visible = true;
  377.                 break;
  378.             case 6:        //buffering
  379.                 
  380.                 break;
  381.             case 7:        //waiting
  382.                 
  383.                 break;
  384.             case 8:        //media ended
  385.                 
  386.                 break;
  387.             case 9:        //Transitioning
  388.                 
  389.                 break;
  390.             case 10:    //Ready
  391.                 
  392.                 break;
  393.             }
  394.         }
  395.  
  396.     if (!player.controls.isAvailable("Stop")) {
  397.         //visMask.visible = false;
  398.     }
  399. }
  400.  
  401. function displayVisText(){
  402.     visEffectsText.visible = true;
  403.     visEffectsText.value = visEffects.currentEffectTitle + ": " + visEffects.currentPresetTitle;
  404.     visView.timerInterval = 6000
  405. }
  406.  
  407. function hideVisText(){
  408.     visEffectsText.visible = false;
  409.     visView.timerInterval = 0
  410. }
  411.  
  412. // video
  413.  
  414. function loadVidPrefs(){
  415.     var _drawerStatus = theme.loadPreference('drawerStatus');
  416.  
  417.     if (_drawerStatus != '--') {
  418.         drawerStatus = (_drawerStatus.toLowerCase() == 'true') ? false : true;
  419.     } else {
  420.         drawerStatus = true;
  421.     }
  422.  
  423.     checkVideoPlayerState();
  424.     toggleVidDrawer();
  425.     updateZoomToolTip();
  426. }
  427.  
  428. function saveVidPrefs(){
  429.     theme.savePreference('drawerStatus',drawerStatus);
  430. }
  431.  
  432. function loadVidSize(){
  433.     var vidSizer = theme.loadPreference( "videoWidth" );
  434.  
  435.     if( "--" != vidSizer )
  436.     {
  437.         view.width = vidSizer;
  438.     }
  439.     vidSizer = theme.loadpreference( "videoHeight" );
  440.  
  441.     if( "--" != vidSizer )
  442.     {
  443.         view.height = vidSizer;
  444.     }
  445. }
  446.  
  447. function saveVidSize(){
  448.     theme.savepreference( "videoWidth", view.width );
  449.     theme.savepreference( "videoHeight", view.height );
  450.     theme.savePreference("vidSnapper" , "false");
  451.     vidZoom.upToolTip = "Click To Set Video Size";
  452.     mediacenter.videoZoom = 50;
  453. }
  454.  
  455. function videoZoom(){
  456.     if("false"==theme.loadPreference("vidSnapper")){
  457.         mediacenter.videoZoom = 50;
  458.     }
  459.     if(mediacenter.videoZoom < 76){
  460.         mediacenter.videoZoom = 100;
  461.     }else if(mediacenter.videoZoom <101){
  462.         mediacenter.videoZoom = 150;
  463.     }else if(mediacenter.videoZoom < 156){
  464.         mediacenter.videoZoom = 200;
  465.     }else{
  466.         mediacenter.videoZoom = 75;
  467.     }
  468.     SnapToVideo();
  469.     updateZoomToolTip();
  470. }
  471.  
  472. function updateZoomToolTip(){
  473.  
  474.     vidZoom.upToolTip = "Video Size - [current: " + mediacenter.videoZoom + "%] - [next: ";
  475.  
  476.     if(mediacenter.videoZoom < 76){
  477.         nextZoom = 100;
  478.     }else if(mediacenter.videoZoom <101){
  479.         nextZoom = 150;
  480.     }else if(mediacenter.videoZoom < 156){
  481.         nextZoom = 200;
  482.     }else{
  483.         nextZoom = 75;
  484.     }
  485.  
  486.     vidZoom.upToolTip += nextZoom + "%]";
  487.     
  488.     if("false"==theme.loadPreference("vidSnapper")){
  489.         vidZoom.upToolTip = "Click To Set Video Size";
  490.     }
  491. }
  492.  
  493. function SnapToVideo(){
  494.  
  495.     theme.savePreference("vidSnapper" , "true");
  496.  
  497.     var zoom = mediacenter.videoZoom;
  498.     var viewWidth = (player.currentMedia.imageSourceWidth * (zoom/100.00));
  499.     var viewHeight = (player.currentMedia.imageSourceHeight * (zoom/100.00));
  500.  
  501.     view.width = viewWidth + 96;
  502.     view.height = viewHeight + 219;
  503. }
  504.  
  505. function checkSnapStatus(){
  506.     if("false"==theme.loadPreference("vidSnapper")){
  507.         loadVidSize();
  508.     }else{
  509.         SnapToVideo();
  510.     }
  511. }
  512.  
  513. function checkVideoPlayerState(){
  514.     if (player){
  515.         switch (player.playState){
  516.             case 0:        //undefined
  517.                 
  518.                 break;
  519.             case 1:        //stopped
  520.  
  521.                 break;
  522.             case 2:        //paused
  523.  
  524.                 break;
  525.             case 3:     //playing
  526.                 centerBox.visible = true;
  527.                 checkSnapStatus();
  528.                 if(!player.currentMedia.ImageSourceWidth>0){
  529.                     view.close();
  530.                     break;
  531.                 }
  532.                 break;
  533.             case 6:        //buffering
  534.                 
  535.                 break;
  536.             case 7:        //waiting
  537.                 
  538.                 break;
  539.             case 8:        //media ended
  540.                 
  541.                 break;
  542.             case 9:        //Transitioning
  543.                 
  544.                 break;
  545.             case 10:    //Ready
  546.                 
  547.                 break;
  548.             }
  549.         }
  550.  
  551.     if (!player.controls.isAvailable("Stop")) {
  552.         centerBox.visible = false;
  553.     }
  554. }
  555.  
  556. var drawerStatus = false;
  557.  
  558. function toggleVidDrawer(){
  559.     if(!drawerStatus){
  560.         vidDrawer.moveTo(0,view.height-122,500);
  561.         vidDrawerFrame.visible = true;
  562.         drawerStatus = !drawerStatus;
  563.     }else{
  564.         vidDrawer.moveTo(0,view.height-225,500);
  565.         vidDrawerOpenButton.visible = true;
  566.         drawerStatus = !drawerStatus;
  567.     }
  568. }
  569.  
  570. function checkDrawerFrame(){
  571.     drawerStatus = drawerStatus;
  572.     vidDrawerFrame.visible = drawerStatus;
  573.     vidDrawerOpenButton.visible = !drawerStatus
  574. }
  575.  
  576. // info / content
  577.  
  578. function loadInfoPrefs(){
  579.     theme.savePreference( 'infoViewer', "true" );
  580. }
  581.  
  582. var infoGo = 0;
  583.  
  584. function showInfo(menu,nav,infoGo){
  585.     infoMenuBack.visible = menu;
  586.     infoNavSub.visible = nav;
  587.     switch(infoGo){
  588.         case 0:
  589.             infoSub.backgroundImage = "";
  590.             break;
  591.         case 1:
  592.             infoMode = 1;    // call sections
  593.             navGo = 1;
  594.             navLimit = 1;
  595.             infoNavNext();
  596.             break;
  597.         case 2:
  598.             infoMode = 2;    // call sections
  599.             navGo = 1;
  600.             navLimit = 6;
  601.             infoNavNext();
  602.             break;
  603.         case 3:
  604.             infoMode = 3;
  605.             navGo = 1;
  606.             navLimit = 7;
  607.             infoNavNext();
  608.             break;
  609.         case 4:                // screenshots
  610.             infoMode = 4;
  611.             navGo = 1;
  612.             navLimit = 6;
  613.             infoNavNext();
  614.             break;
  615.     }
  616. }
  617.  
  618. navGo = 1;
  619.  
  620. function infoNavNext(){
  621.     infoSub.backgroundImage = "c_sub_" + infoMode + "_" + navGo + ".jpg";
  622.     navCheck();
  623. }
  624.  
  625. function infoNavPrev(){
  626.     infoSub.backgroundImage = "c_sub_" + infoMode + "_" + navGo + ".jpg";
  627.     navCheck();
  628. }
  629.  
  630. function navCheck(){
  631.     if(navGo==1){
  632.         navPrev.enabled = false;
  633.         navNext.enabled = true;
  634.     }else if(navGo==navLimit && infoMode==infoMode){    // enable / disable sections
  635.         navNext.enabled = false;
  636.         navPrev.enabled = true;
  637.     }else{
  638.         navNext.enabled = true;
  639.         navPrev.enabled = true;
  640.     }
  641. }