home *** CD-ROM | disk | FTP | other *** search
/ Chip 2003 December / Chip_2003-12_cd1.bin / opsys / wmakeup / download / SmartDisplayBlue.wmz / mira.js < prev    next >
Text (UTF-16)  |  2003-03-17  |  33KB  |  759 lines

  1. /*
  2.     The Skins Factory
  3.     http://www.theskinsfactory.com
  4.     info@theskinsfactory.com
  5. */
  6.  
  7. function checkMediaOnLoad(){
  8.     if(player){}
  9.     view.width = 0;
  10.     view.height = 0;
  11.     view.backgroundImage = "";
  12.     theme.currentViewID = "mainView";
  13.  
  14.     if( ((player.Playstate==3)||(player.Playstate==2)) && (player.currentMedia.ImageSourceWidth>0)){
  15.         theme.currentViewID = 'videoView';
  16.         loadGlobalPrefs();
  17.     }else{
  18.         theme.currentViewID = 'mainView';
  19.         loadGlobalPrefs();
  20.     }
  21. }
  22.  
  23. var introStatus = false;
  24.  
  25. function introSequence(){
  26.     if(!introStatus){
  27.         var _shutterStatus = theme.loadPreference('shutterStatus');
  28.  
  29.         if (_shutterStatus != '--') {
  30.             shutterStatus = (_shutterStatus.toLowerCase() == 'true') ? false : true;
  31.         } else {
  32.             shutterStatus = true;
  33.         }
  34.  
  35.         toggleShutter();
  36.         toggleShutterUpdate();
  37.         view.timerInterval = 0;
  38.     }
  39. }
  40.  
  41. function mainStartUp(){
  42.     volume.value = player.settings.volume;
  43.     loadMainPrefs();
  44.     checkPlayerState();
  45.     updateMetadata();
  46. }
  47.  
  48. var shutterStatus = false;
  49.  
  50. function toggleShutter(){
  51.     if(shutterStatus){
  52.         mainBotDrawer.moveTo(57,319,500);
  53.         shutterButtonSub.moveTo(106,392,500);
  54.         mainSeekDrawer.moveTo(0,167,500);
  55.         mainVolDrawer.moveTo(221,167,500);
  56.         botDrawerButtons.visible = seek.visible = volume.visible = true;
  57.         drawerButton.down = true;
  58.         shutterStatus = !shutterStatus;
  59.     }else{
  60.         mainBotDrawer.moveTo(57,282,500);
  61.         shutterButtonSub.moveTo(106,356,500);
  62.         mainSeekDrawer.moveTo(18,167,500);
  63.         mainVolDrawer.moveTo(202,167,500);
  64.         drawerButton.down = false;
  65.         shutterStatus = !shutterStatus;
  66.     }
  67. }
  68.  
  69. var shutterStatus2 = false;
  70.  
  71. function toggleShutterUpdate(){
  72.     if(!shutterStatus2){
  73.         shutterSub.backgroundImage = "shutter_open.gif";
  74.         shutterButton.down = false;
  75.         shutterStatic.visible = false;
  76.         shutterStatus2 = !shutterStatus2;
  77.     }else{
  78.         shutterSub.backgroundImage = "shutter_close.gif";
  79.         shutterButton.down = true;
  80.         shutterStatic.visible = true;
  81.         shutterStatus2 = !shutterStatus2;
  82.     }
  83. }
  84.  
  85. function checkShutterStatus(){
  86.     shutterStatus = shutterStatus;
  87.     botDrawerButtons.visible = seek.visible = volume.visible = !shutterStatus;
  88. }
  89.  
  90. function checkPlayerState(){
  91.  
  92.     if (player){
  93.         switch (player.playState){
  94.  
  95.             case 3:     //playing
  96.                 if(player.currentMedia.ImageSourceWidth>0){
  97.                     theme.currentViewID = 'videoView';
  98.                     break;
  99.                 }
  100.                 break;
  101.             }
  102.         }
  103.  
  104.  
  105.     if (!player.controls.isAvailable("Stop")) {
  106.         
  107.     }
  108.  
  109. }
  110.  
  111. // metadata
  112.  
  113.  
  114. function updateMetadata(type){
  115.     if("status"==type){
  116.         if(player.openState!=13) return;
  117.  
  118.         var metaAuthor = player.currentMedia.getItemInfo("author");
  119.  
  120.         if (metaAuthor != "") {
  121.             metaAuthor += " - ";
  122.         }
  123.  
  124.         metadata.value = player.status;
  125.  
  126.         if (metadata.value != "") {
  127.             metadata.value += " - ";
  128.         }
  129.  
  130.         metadata.value += metaAuthor;
  131.     }else if("playlist"==type){
  132.         if(player.currentPlaylist.count==0) return;
  133.  
  134.         var metaAuthor = player.currentMedia.getItemInfo("author");
  135.  
  136.         if (metaAuthor != "") {
  137.             metaAuthor += " - ";
  138.         }
  139.  
  140.         if(player.openState!=13){
  141.             metadata.value = metaAuthor;
  142.         }
  143.     }else{
  144.         metadata.value = player.status;
  145.         metadata.scrolling = (metadata.textWidth>metadata.width);
  146.         return;
  147.     }
  148.  
  149.     metadata.value += player.currentmedia.name;
  150.     metadata.scrolling = (metadata.textWidth>metadata.width);
  151.  
  152. }
  153.  
  154.  
  155. // button and hotkey definitions
  156.  
  157. // open file
  158. function openFile(){
  159.     var media = theme.openDialog('FILE_OPEN','FILES_ALLMEDIA');
  160.     if (media) {
  161.         player.URL = media;
  162.         player.controls.play();
  163.     }
  164. }
  165.  
  166. function viewHotKeys(){
  167.     switch(event.keycode){
  168.         case 122:
  169.         case 90:
  170.             player.controls.previous();
  171.             break;
  172.         case 120:
  173.         case 88:
  174.             player.controls.play();
  175.             break;
  176.         case 99:
  177.         case 67:
  178.             player.controls.pause();
  179.             break;
  180.         case 118:
  181.         case 86:
  182.             player.controls.stop();
  183.             break;
  184.         case 98:
  185.         case 66:
  186.             player.controls.next();
  187.             break;
  188.         case 108:
  189.         case 76:
  190.             openFile();
  191.             break;
  192.     }
  193. }
  194.  
  195. function viewResizer(event){
  196.     switch(event.keycode){
  197.         case 37:
  198.             view.width-=20;
  199.             break;
  200.         case 38:
  201.             view.height-=20
  202.             break;
  203.         case 39:
  204.             view.width+=20;
  205.             break;
  206.         case 40:
  207.             view.height+=20;
  208.             break;
  209.         }
  210. }
  211.  
  212. function updateSeekToolTip(){
  213.     if(player.openState!=13) return;
  214.  
  215.     var seekHours = Math.floor((seek.value / 3600));
  216.     if (seekHours < 10) seekHours = "0" + seekHours;
  217.  
  218.     var seekMinutes = Math.floor((seek.value - (seekHours*3600))/60);
  219.     if (seekMinutes < 10) seekMinutes = "0" + seekMinutes;
  220.  
  221.     var seekSeconds = Math.floor((seek.value - (seekMinutes*60) - (seekHours*3600)));
  222.     if (seekSeconds < 10) seekSeconds = "0" + seekSeconds;
  223.  
  224.     var seekString;
  225.  
  226.     if (seekHours==00) {
  227.         seekString = "";
  228.     }else{
  229.         seekString = seekHours + ":";
  230.     }
  231.  
  232.     seekString += seekMinutes + ":" + seekSeconds;
  233.  
  234.     seek.toolTip = seekString;
  235.     seek.toolTip += " / ";
  236.     seek.toolTip += player.currentMedia.DurationString;
  237.  
  238. }
  239.  
  240. function updateSeekToolTip2(){
  241.     if(player.openState!=13) return;
  242.  
  243.     var seekHours = Math.floor((seek2.value / 3600));
  244.     if (seekHours < 10) seekHours = "0" + seekHours;
  245.  
  246.     var seekMinutes = Math.floor((seek2.value - (seekHours*3600))/60);
  247.     if (seekMinutes < 10) seekMinutes = "0" + seekMinutes;
  248.  
  249.     var seekSeconds = Math.floor((seek2.value - (seekMinutes*60) - (seekHours*3600)));
  250.     if (seekSeconds < 10) seekSeconds = "0" + seekSeconds;
  251.  
  252.     var seekString;
  253.  
  254.     if (seekHours==00) {
  255.         seekString = "";
  256.     }else{
  257.         seekString = seekHours + ":";
  258.     }
  259.  
  260.     seekString += seekMinutes + ":" + seekSeconds;
  261.  
  262.     seek2.toolTip = seekString;
  263.     seek2.toolTip += " / ";
  264.     seek2.toolTip += player.currentMedia.DurationString;
  265.  
  266. }
  267.  
  268. function updateToolTip(id,button,tip){
  269.     if("true"==theme.loadPreference( id )){
  270.         eval( button +".upToolTip = locHide" + tip + ".toolTip" );
  271.     }else{
  272.         eval( button +".upToolTip = locShow" + tip + ".toolTip" );
  273.     }
  274. }
  275.  
  276. function updateVolToolTip(){
  277.     volume.toolTip = "";
  278.     volume.toolTip += player.settings.volume;
  279. }
  280.  
  281. function updateRemoteVolToolTip(){
  282.     volume2.toolTip = "";
  283.     volume2.toolTip += player.settings.volume;
  284. }
  285.  
  286. function updateShuffRep(){
  287.     if(player.settings.getMode('shuffle')){
  288.         shuffleButton.down = true;
  289.     }else{
  290.         shuffleButton.down = false;
  291.     }
  292.  
  293.     if(player.settings.getMode('loop')){
  294.         repeatButton.down = true;
  295.     }else{
  296.         repeatButton.down = false;
  297.     }
  298. }
  299.  
  300. //
  301.  
  302. function volKey(event){
  303.     switch(event.keycode){
  304.         case 37:
  305.         case 40:
  306.             if(player.settings.volume < 95){
  307.                 player.settings.volume+=5;
  308.             }else{
  309.                 player.settings.volume = 100;
  310.             }
  311.             break;
  312.         case 39:
  313.         case 38:
  314.             if(player.settings.volume > 5){
  315.                 player.settings.volume-=5;
  316.             }else{
  317.                 player.settings.volume = 0;
  318.             }
  319.             break;        
  320.         }
  321.         //mute.down = false;
  322.         player.settings.mute = false;
  323.     }
  324.  
  325. function seekKey(event){
  326.     switch(event.keycode){
  327.         case 37:
  328.         case 40:
  329.             if(player.controls.currentPosition > 10){
  330.                 player.controls.currentPosition-=10;
  331.             }else{
  332.                 player.controls.currentPosition = 0;
  333.             }
  334.             break;
  335.         case 39:
  336.         case 38:
  337.             if(player.controls.currentPosition < 900){
  338.                 player.controls.currentPosition+=10;
  339.             }else{
  340.                 player.controls.currentPosition = 1000;
  341.             }
  342.             break;        
  343.         }
  344.     }
  345.  
  346. // view toggle 
  347.  
  348. function toggleView(name,id){
  349.     if("true"==theme.loadPreference(id)){
  350.         theme.savePreference(id, "false");
  351.         theme.closeView( name );
  352.     }else{
  353.         theme.openView( name );
  354.     }
  355. }
  356.  
  357. function closeView(id){
  358.     theme.savePreference(id, "false");
  359.     if( id=="vidViewer" && player.currentMedia.ImageSourceWidth>0 ){
  360.         player.controls.stop();
  361.     }
  362.     view.close();
  363. }
  364.  
  365. function autoSizeView(width,height){
  366.     var viewSize = theme.loadPreference( width );
  367.  
  368.     if( "--" != viewSize )
  369.     {
  370.         view.width = viewSize;
  371.     }else{
  372.         view.width = view.minWidth;
  373.     }
  374.  
  375.     viewSize = theme.loadpreference( height );
  376.  
  377.     if( "--" != viewSize )
  378.     {
  379.         view.height = viewSize;
  380.     }else{
  381.         view.height = view.minHeight;
  382.     }
  383. }
  384.  
  385. function saveViewSize(width,height){
  386.     theme.savepreference( width , view.width );
  387.     theme.savepreference( height , view.height );
  388. }
  389.  
  390. // preferences
  391.  
  392. function loadMainPrefs(){
  393.  
  394.     if ("true"==theme.loadPreference("visViewer")){
  395.         theme.openView( 'visView' );
  396.     }
  397.  
  398.     if ("true"==theme.loadPreference("remoteViewer")){
  399.         theme.closeView('remoteView');
  400.     }
  401. }
  402.  
  403. function saveMainPrefs() {
  404.     theme.savePreference('shutterStatus',shutterStatus);
  405. }
  406.  
  407. function mainShutDown(){
  408.     saveMainPrefs();
  409. }
  410.  
  411. function loadGlobalPrefs(){
  412.     if ("true"==theme.loadPreference("plViewer")){
  413.         theme.openView( 'plView' );
  414.     }
  415.  
  416.     if ("true"==theme.loadPreference("eqViewer")){
  417.         theme.openView( 'eqView' );
  418.     }
  419. }
  420.  
  421. // playlist
  422. function loadPlPrefs(){
  423.     theme.savePreference( 'plViewer', "true" );
  424.  
  425.     autoSizeView('plWidth','plHeight');
  426.  
  427.     var index = 0;
  428.  
  429.     playlist1.setColumnResizeMode( index++, "Stretches" );
  430.     playlist1.setColumnResizeMode( index++, "AutosizeHeader" );
  431.     playlist1.setColumnResizeMode( index++, "AutosizeHeader" );
  432.     playlist1.setColumnResizeMode( index++, "AutosizeHeader" );
  433.     playlist1.setColumnResizeMode( index++, "AutosizeHeader" );
  434.  
  435. }
  436.  
  437. function addToPlaylist(){
  438.     var media = theme.openDialog( "FILE_OPEN" , "FILES_ALLMEDIA" );
  439.     if(media){
  440.         newMedia = player.mediaCollection.add( media );
  441.         playlist1.playlist.appendItem( newMedia );
  442.     }
  443. }
  444.  
  445. function delFromPlaylist(){
  446.     playlist1.deleteSelected()
  447. }
  448.  
  449. function savePlPrefs(){
  450.     saveViewSize('plWidth','plHeight');
  451. }
  452.  
  453. // equalizer
  454. function loadEQPrefs(){
  455.     theme.savePreference( 'eqViewer', "true" );
  456.     if(truBass.enabled){
  457.         srsCover.visible = false;
  458.     }
  459. }
  460.  
  461. function updateBalToolTip(){
  462.     balance.toolTip = "";
  463.     balance.toolTip += player.settings.balance;
  464. }
  465.  
  466. function toggleSpeaker(){
  467.     if(eq.speakerSize==2){
  468.         eq.speakerSize = -1;
  469.     }
  470.     eq.speakerSize++
  471. }
  472.  
  473. // visualizations
  474. function loadVisPrefs(){
  475.     theme.savePreference( 'visViewer', "true" );
  476.     visEffects.currentEffectType = mediacenter.effectType;
  477.     visEffects.currentPreset = mediacenter.effectPreset;
  478.  
  479.     autoSizeView('visWidth','visHeight');
  480.  
  481.     checkVisualsPlayerState()
  482. }
  483.  
  484. function saveVisPrefs(){
  485.     mediacenter.effectType = visEffects.currentEffectType;
  486.     mediacenter.effectPreset = visEffects.currentPreset;
  487.     saveViewSize('visWidth','visHeight');
  488. }
  489.  
  490. function checkVisualsPlayerState(){
  491.  
  492.     if (player){
  493.         switch (player.playState){
  494.             case 3:     //playing
  495.                 //visMask.visible = true;
  496.                 break;
  497.  
  498.             }
  499.         }
  500.  
  501.     if (!player.controls.isAvailable("Stop")) {
  502.         //visMask.visible = false;
  503.     }
  504. }
  505.  
  506. function displayVisText(){
  507.     visEffectsText.visible = true;
  508.     visEffectsText.value = visEffects.currentEffectTitle + ": " + visEffects.currentPresetTitle;
  509.     visView.timerInterval = 6000
  510. }
  511.  
  512. function hideVisText(){
  513.     visEffectsText.visible = false;
  514.     visView.timerInterval = 0
  515. }
  516.  
  517.  
  518. // video settings
  519.  
  520. function loadVidPrefs(){
  521.     //theme.savePreference( 'vidViewer', "true" );
  522.     var _drawerStatus = theme.loadPreference('drawerStatus');
  523.  
  524.     if (_drawerStatus != '--') {
  525.         drawerStatus = (_drawerStatus.toLowerCase() == 'true') ? false : true;
  526.     } else {
  527.         drawerStatus = true;
  528.     }
  529.  
  530.     checkSnapStatus();
  531.     checkVideoPlayerState();
  532.     updateZoomToolTip();
  533.     toggleVidDrawer();
  534.     updateVideoMetadata('status');
  535.     
  536.     if (("--"==theme.loadPreference("remoteViewer"))||("true"==theme.loadPreference("remoteViewer"))){
  537.         theme.openView( 'remoteView' );
  538.     }
  539.  
  540.     if ("true"==theme.loadPreference("visViewer")){
  541.         theme.closeView( 'visView' );
  542.     }
  543. }
  544.  
  545. function saveVidPrefs(){
  546.     theme.savePreference('drawerStatus',drawerStatus);
  547. }
  548.  
  549. function loadVidSize(){
  550.     var vidSizer = theme.loadPreference( "videoWidth" );
  551.  
  552.     if( "--" != vidSizer )
  553.     {
  554.         view.width = vidSizer;
  555.     }
  556.     vidSizer = theme.loadpreference( "videoHeight" );
  557.  
  558.     if( "--" != vidSizer )
  559.     {
  560.         view.height = vidSizer;
  561.     }
  562. }
  563.  
  564. function saveVidSize(){
  565.     theme.savepreference( "videoWidth", view.width );
  566.     theme.savepreference( "videoHeight", view.height );
  567.     theme.savePreference("vidSnapper" , "false");
  568.     vidZoom.upToolTip = vidSetTip.toolTip;
  569.     mediacenter.videoZoom = 50;
  570. }
  571.  
  572. function videoZoom(){
  573.     if("false"==theme.loadPreference("vidSnapper")){
  574.         mediacenter.videoZoom = 50;
  575.     }
  576.     if(mediacenter.videoZoom < 76){
  577.         mediacenter.videoZoom = 100;
  578.     }else if(mediacenter.videoZoom <101){
  579.         mediacenter.videoZoom = 150;
  580.     }else if(mediacenter.videoZoom < 156){
  581.         mediacenter.videoZoom = 200;
  582.     }else{
  583.         mediacenter.videoZoom = 75;
  584.     }
  585.     SnapToVideo();
  586.     updateZoomToolTip();
  587. }
  588.  
  589. function updateZoomToolTip(){
  590.  
  591.     vidZoom.upToolTip = vidZoomIn.toolTip + mediacenter.videoZoom + vidZoomMid.toolTip;
  592.  
  593.     if(mediacenter.videoZoom < 76){
  594.         nextZoom = 100;
  595.     }else if(mediacenter.videoZoom <101){
  596.         nextZoom = 150;
  597.     }else if(mediacenter.videoZoom < 156){
  598.         nextZoom = 200;
  599.     }else{
  600.         nextZoom = 75;
  601.     }
  602.  
  603.     vidZoom.upToolTip += nextZoom + vidZoomOut.toolTip;
  604.     
  605.     if("false"==theme.loadPreference("vidSnapper")){
  606.         vidZoom.upToolTip = vidSetTip.toolTip;
  607.     }
  608. }
  609.  
  610. function SnapToVideo(){
  611.  
  612.     theme.savePreference("vidSnapper" , "true");
  613.  
  614.     var zoom = mediacenter.videoZoom;
  615.     var viewWidth = (player.currentMedia.imageSourceWidth * (zoom/100.00));
  616.     var viewHeight = (player.currentMedia.imageSourceHeight * (zoom/100.00));
  617.  
  618.     view.width = viewWidth + 52;
  619.     view.height = viewHeight + 264;
  620. }
  621.  
  622. function checkSnapStatus(){
  623.     if(player.openState!=13) return;
  624.     if("false"==theme.loadPreference("vidSnapper")){
  625.         loadVidSize();
  626.     }else{
  627.         SnapToVideo();
  628.     }
  629. }
  630.  
  631. function returnToMain(){
  632.     theme.currentViewID = 'mainView';
  633.     // hide remote
  634. }
  635.  
  636. function checkVideoOpenState(){
  637.     if(player){
  638.         switch(player.openState){
  639.             case 13:
  640.                 if(player.currentMedia.ImageSourceWidth>0){
  641.                     break;
  642.                 }else{
  643.                     //theme.currentViewID = 'mainView';
  644.                 }
  645.         }
  646.     }
  647. }
  648.  
  649. function checkVideoPlayerState(){
  650.     if (player){
  651.         switch (player.playState){
  652.  
  653.             case 3:     //playing
  654.                 if(player.currentMedia.ImageSourceWidth>0){
  655.                     videoFrame.visible = true;
  656.                     if(!player.fullScreen){
  657.                         checkSnapStatus();
  658.                     }
  659.                 }else{
  660.                     videoFrame.visible = false;
  661.                 }
  662.                 break;
  663.             }
  664.             if((player.openState==13)&&player.currentMedia.ImageSourceWidth>0){
  665.                 switchButton.enabled = false;
  666.                 vidResize.enabled = true;
  667.                 vidZoom.enabled = true;
  668.                 switchButton.upToolTip = returnPlayerDis.toolTip;
  669.             }else{
  670.                 switchButton.enabled = true;
  671.                 vidResize.enabled = false;
  672.                 vidZoom.enabled = false;
  673.                 switchButton.upToolTip = returnPlayer.toolTip;
  674.             }
  675.         }
  676.  
  677.     if (!player.controls.isAvailable("Stop")) {
  678.         videoFrame.visible = false;
  679.         vidZoom.enabled = false;
  680.         switchButton.enabled = true;
  681.         vidResize.enabled = false;
  682.         switchButton.upToolTip = returnPlayer.toolTip;
  683.         view.width = view.minWidth;
  684.         view.height = view.minHeight;
  685.     }
  686.     
  687. }
  688.  
  689. var drawerStatus = false;
  690.  
  691. function toggleVidDrawer(){
  692.     if(!drawerStatus){
  693.         vidSettingsDrawer.moveTo(0,view.height-195,600);
  694.         vidDraweButtonSub.moveTo(0,view.height-35,600);
  695.         vidSliderSub.visible = true;
  696.         vidDrawerButton.down = true
  697.         drawerStatus = !drawerStatus;
  698.     }else{
  699.         vidSettingsDrawer.moveTo(0,view.height-352,600);
  700.         vidDraweButtonSub.moveTo(0,view.height-192,600);
  701.         vidDrawerButton.down = false;
  702.         drawerStatus = !drawerStatus;
  703.     }
  704. }
  705.  
  706. function checkDrawerStatus(){
  707.     drawerStatus = drawerStatus;
  708.     vidSliderSub.visible = drawerStatus;
  709. }
  710.  
  711. function updateVideoMetadata(type){
  712.     if("status"==type){
  713.         if(player.openState!=13) return;
  714.  
  715.         var metaAuthor = player.currentMedia.getItemInfo("author");
  716.  
  717.         if (metaAuthor != "") {
  718.             metaAuthor += " - ";
  719.         }
  720.  
  721.         vidMetadata.value = player.status;
  722.  
  723.         if (vidMetadata.value != "") {
  724.             vidMetadata.value += " - ";
  725.         }
  726.  
  727.         vidMetadata.value += metaAuthor;
  728.     }else if("playlist"==type){
  729.         if(player.currentPlaylist.count==0) return;
  730.  
  731.         var metaAuthor = player.currentMedia.getItemInfo("author");
  732.  
  733.         if (metaAuthor != "") {
  734.             metaAuthor += " - ";
  735.         }
  736.  
  737.         if(player.openState!=13){
  738.             vidMetadata.value = metaAuthor;
  739.         }
  740.     }else{
  741.         vidMetadata.value = player.status;
  742.         vidMetadata.scrolling = (vidMetadata.textWidth>vidMetadata.width);
  743.         return;
  744.     }
  745.  
  746.     vidMetadata.value += player.currentmedia.name;
  747.     vidMetadata.scrolling = (vidMetadata.textWidth>vidMetadata.width);
  748.  
  749. }
  750.  
  751.  
  752. // vid remote
  753.  
  754. function loadVidRemotePrefs(){
  755.     theme.savePreference( 'remoteViewer', "true" );
  756. //    view.width = view.minWidth;
  757. //    view.height = view.minHeight;
  758. }
  759.