Help - Search - Members - Calendar
Full Version: Help me to edit QuickSilver Skin (.wmz)
Pixel2Life Forum > Help Section > Desktop Programming
snjflame
Hi, I need some help to edit the (Windows Media Player) Quick Silver Skin,



In this skin, can't scale (resize) the video frame freely in video mode (the video frame get blocked) Please help me, I hope some one with the better knowladge with Javascript can help me.

WMP Skin : QuickSilver.wmz 

wms: http://www.fileupyours.com/view/208779/base.wms.txt 

js: http://www.fileupyours.com/view/208779/script.js.txt 



script.js CODE

CODE


/*
Microsoft Windows Media Player
© Microsoft Corporation, 2002. All Rights Reserved.
File: Quicksilver
Description: WMP Series 9 Skin
*/

/*
 main mode
*/

// check media types
function checkMediaOnLoad(){
 if(player){}
 view.width = 0;
 view.height = 0;
 view.backgroundImage = "";

 if( ((player.Playstate==3)||(player.Playstate==2)) && (player.currentMedia.ImageSourceWidth>0)){
  theme.currentViewID = 'videoView';
  theme.savePreference("videoViewOn","true");
  loadGlobalPrefs();
 }else{
  theme.currentViewID = 'mainView';
  theme.savePreference("videoViewOn","false");
  loadGlobalPrefs();
/* if (!player.controls.isAvailable("Stop")) {
  if(player.currentMedia.ImageSourceWidth>0){
  theme.currentViewID = 'videoView';
  theme.savePreference("videoViewOn","true");
  }
  }*/
 }
}

var shuttervar = true;

// open file
function openFile(){
 media = theme.openDialog('FILE_OPEN','FILES_ALLMEDIA');
 if (media) {
  player.URL = media;
  player.controls.play();
 }
}


function updateShuffRep(){
 if(player.settings.getMode('shuffle')){
  shuffleButton.down = true;
 }else{
  shuffleButton.down = false;
 }

 if(player.settings.getMode('loop')){
  loopButton.down = true;
 }else{
  loopButton.down = false;
 }
}

function Toggleshutter(){

 if(shuttervar){
 //closing
  Meta.alphaBlendTo(0,500);
  shutter2.visible = true;
  shutterbut2.down = true;
  mute2.alphaBlendTo(0,500);
  mute2.enabled = false;
  volume.alphaBlendTo(0,500);
  volumeslider.enabled = false;
  progress.alphaBlendTo(0,500);
  progressMain.enabled = false;
  fullminclose.alphaBlendTo(0,500);
  fullminclose.enabled = false;
  coverbottom.alphaBlendTo(255,400);
  pleqviscov.alphaBlendTo(255,500);
  mainmin.enabled = false;
  mainclose.enabled = false;
  mainfull.enabled = false;
  mutebut.enabled = false;
  shutbutton.uptooltip = "Open Shutter";
 
  volume.passThrough = "True";
  progress.passThrough = "True";
  mute2.passThrough = "True";
  visButton.enabled = false;
  eqButton.enabled = false;
  plButton.enabled = false;
 
 
  shuttervar = false;
 }else{
 //opening
  shutter.visible = true;
  shutter2.visible = false;
  shutter.alphaBlendTo(255,0);
 
  shutterbut.down = true;
  fullminclose.alphaBlendTo(255,5000);
  fullminclose.enabled = true;
  coverbottom.alphaBlendTo(0,5000);
  mute2.alphaBlendTo(255,5000);
  mute2.enabled = true;
  volume.alphaBlendTo(255,5000);
  volumeslider.enabled = true;
  progress.alphaBlendTo(255,5000);
  progressMain.enabled = true;
  pleqviscov.alphaBlendTo(0,500);
  mainmin.enabled = true;
  mainclose.enabled = true;
  mainfull.enabled = true;
  mutebut.enabled = true;
  shutbutton.uptooltip = "Close Shutter";

  volume.passThrough = "False";
  progress.passThrough = "False";
  mute2.passThrough = "False";
  Meta.alphaBlendTo(255,500);
  visButton.enabled = true;
  eqButton.enabled = true;
  plButton.enabled = true;
  shuttervar = true;

 }
}


function Blendshutter(){
 if(shutter.alphaBlend==255){
 
  mainView.timerInterval="0";
  //shutter.alphaBlendTo(0,500);
  pleqviscov.alphaBlendTo(0,500);
  fullminclose.alphaBlendTo(255,500);
  coverbottom.alphaBlendTo(0,500);
  mute2.alphaBlendTo(255,500);
  volume.alphaBlendTo(255,500);
  progress.alphaBlendTo(255,500);

  volume.passThrough = "False";
  progress.passThrough = "False";
  mute2.passThrough = "False";
  Meta.alphaBlendTo(255,500);

  shuttervar = true;

 }
}


// play states -- main player
function checkPlayerState(){

 if (player){
  switch (player.playState){
  case 0: //undefined
   
  break;
  case 1: //stopped
  pausebutton.visible = false;

  break;
  case 2: //paused
  pausebutton.visible = false;
  //visMark = visMark;
   
  //killVis();
  break;
  case 3: //playing
  if("true"==theme.loadPreference("visViewer")){
  theme.openView( "visView" );
  }
  pausebutton.visible = true;
  pausebut.down = true;
  if(player.currentMedia.ImageSourceWidth>0){
  theme.currentViewID = 'videoView';
  theme.savePreference("videoViewOn","true");
  }
  visButton.enabled = true;
  //toggleVis();
  break;
  case 6: //buffering
   
  break;
  case 7: //waiting
   
  break;
  case 8: //media ended
  pausebutton.visible = false;
   
  break;
  case 9: //Transitioning
   
  break;
  case 10: //Ready
  pausebutton.visible = false;
   
  break;
  }
  }

 if (!player.controls.isAvailable("Stop")) {
  //visMask.alphaBlendTo(0,500);
  //visMark = visMark;
 }

 updateMetadata()
}

function checkPlayerMediaGlobal(){
 if(((player.Playstate==3)||(player.Playstate==2)) && player.currentMedia.ImageSourceWidth>0){
  if("true"==theme.loadPreference("videoViewOn")){
  if(player.playState==3){
  theme.savePreference("videoViewOn","true");
  }
  }else{
  theme.currentViewID="videoView";
  theme.savePreference("videoViewOn","true");
  }
 }else{
  if("false"==theme.loadPreference("videoViewOn")){
  theme.savePreference("videoViewOn","false");
  }else{
  theme.currentViewID="mainView";
  theme.savePreference("videoViewOn","false");
  }
 }
}

// initial main setup

function startup(){
 loadMainPrefs();
 checkPlayerState();
 
}

//meta data

function updateMetadata(){

 if(player.openState!=13) return;

 //metadata.value = player.status;

 var authorppl = player.currentmedia.getiteminfo("#author");
 
 metadata.value = authorppl;

 if (authorppl == "") {
  authorppl = player.currentmedia.getiteminfo("author");
 }

 if (authorppl != "") {
  authorppl += " - ";
 }

 if (metadata.value != "") {
  metadata.value += " - ";
 }

 metadata.value += authorppl;
 metadata.value += player.currentmedia.name;
 metadata.scrolling = (metadata.textWidth>metadata.width);
 
}

function toggleVis(){
 if("true"==theme.loadPreference("visViewer")){
  theme.savePreference("visViewer", "false");
  theme.closeView( "visView" );
 }else{
  theme.openView( "visView" );
 }
}


function checkVisPlayStates(){
 if(player){
  switch(player.PlayState){
  case 2:
  visMask.visible = true;
  case 3:
  visMask.visible = true;
  break;
   
  }
 }

 if (!player.controls.isAvailable("Stop")) {
 // view.close();
 }

}

function loadVisPrefs(){
 theme.savePreference( 'visViewer', 'true' )
 checkVisPlayStates();
 visEffects.currentEffectType = mediacenter.effectType;
 visEffects.currentPreset = mediacenter.effectPreset;

  var visWH = theme.loadPreference( "visWidth" );

 if( "--" != visWH ){
  visView.width = visWH;
  }
  visWH = theme.loadpreference( "visHeight" );

 if( "--" != visWH ){
  visView.height = visWH;
  }
 
 visEffectsText.value = visEffects.currentEffectTitle;

}

function saveVisPrefs(){

 mediacenter.effectType = visEffects.currentEffectType;
 mediacenter.effectPreset = visEffects.currentPreset;

  theme.savepreference( "visWidth", visView.width );
  theme.savepreference( "visHeight", visView.height );
 
}

function displayVisText(){
 visEffectsText.visible = true;
 visEffectsText.value = visEffects.currentEffectTitle + ": " + visEffects.currentPresetTitle;
 visView.timerInterval = 6000;
}

function hideVisText(){
 visEffectsText.visible = false;
 visView.timerInterval = 0;
}

function killVis(){
 theme.closeView( 'visView' );
 
}

function viewResizer(event){
 switch(event.keycode){
  case 37:
  view.width-=20;
  break;
  case 38:
  view.height-=20
  break;
  case 39:
  view.width+=20;
  break;
  case 40:
  view.height+=20;
  break;
  }
}

function viewHotKeys(){
 switch(event.keycode){
  case 122:
  case 90:
  player.controls.previous();
  break;
  case 120:
  case 88:
  player.controls.play();
  break;
  case 99:
  case 67:
  player.controls.pause();
  break;
  case 118:
  case 86:
  player.controls.stop();
  break;
  case 98:
  case 66:
  player.controls.next();
  break;
  case 108:
  case 76:
  openFile()
  break;
 }
}

// main preferences

function loadMainPrefs(){

 updateMetadata();

 if ("true"==theme.loadPreference("visViewer")){
  theme.openView( 'visView' );
 }

 theme.savePreference("videoViewOn","false");
}

var eqvar = true;

function toggleEQ(){
 if(eqvar){
 
  eqsubview.alphaBlendTo(255,500);
  fullminclose.alphaBlendTo(0,500);
  progress.alphaBlendTo(0,500);
  volume.alphaBlendTo(0,500);
  mute2.alphaBlendTo(0,500);
  eqsubview.passThrough = "False";
 
  volume.passThrough = "True";
  progress.passThrough = "True";
  mute2.passThrough = "True";
 
  shutterbuttoncov.alphaBlendTo(255,500);
  shutterbuttoncov.passThrough = "False";

  eq1.enabled = "True";
  eq2.enabled = "True";
  eq3.enabled = "True";
  eq4.enabled = "True";
  eq5.enabled = "True";
  eq6.enabled = "True";
  eq7.enabled = "True";
  eq8.enabled = "True";
  eq9.enabled = "True";
  eq10.enabled = "True";
  eqbal.enabled = "True";
  balslid.enabled = "True";
  eqprev.enabled = "True";
  eqnext.enabled = "True";
  eqres.enabled = "True";
  fullminclosebut.enabled = "False";
  progressMain.enabled = "False";
  volumeslider.enabled = "False";
  mutebut.enabled = "False";
 
  eqButton.upToolTip = "Hide Graphic Equalizer";

  eqvar = false;
 
 }else{
 
  eqsubview.alphaBlendTo(0,500);
  fullminclose.alphaBlendTo(250,500);
  progress.alphaBlendTo(250,500);
  volume.alphaBlendTo(250,500);
  mute2.alphaBlendTo(255,500);
  eqsubview.passThrough = "True";
  volume.passThrough = "False";
  progress.passThrough = "False";
  mute2.passThrough = "False";
  shutterbuttoncov.alphaBlendTo(0,500);
  shutterbuttoncov.passThrough = "True";
  //loadEQPrefs();
  eq1.enabled = "False";
  eq2.enabled = "False";
  eq3.enabled = "False";
  eq4.enabled = "False";
  eq5.enabled = "False";
  eq6.enabled = "False";
  eq7.enabled = "False";
  eq8.enabled = "False";
  eq9.enabled = "False";
  eq10.enabled = "False";
  eqbal.enabled = "False";
  balslid.enabled = "False";
  eqprev.enabled = "False";
  eqnext.enabled = "False";
  eqres.enabled = "False";
  fullminclosebut.enabled = "True";
  progressMain.enabled = "True";
  volumeslider.enabled = "True";
  mutebut.enabled = "True";
  eqButton.upToolTip = "Show Graphic Equalizer";
  eqvar = true;
 
 }
}


// pl area

function loadPlPrefs(){
 theme.savePreference( 'plViewer', "true" );
  var dwScale = theme.loadPreference( "PlaylistWidth" );

  if( "--" != dwScale )
  {
  plView.width = dwScale;
  }
  dwScale = theme.loadpreference( "PlaylistHeight" );

  if( "--" != dwScale )
  {
  plView.height = dwScale;
  }

  plFrame.setColumnResizeMode( 0, "stretches" );
  plFrame.setColumnResizeMode( 1, "autosizedata" );
  plFrame.setColumnResizeMode( 2, "autosizedata" );
  plFrame.setColumnResizeMode( 3, "autosizedata" );
}

function savePlPrefs(){
  theme.savepreference( "PlaylistWidth", plView.width );
  theme.savepreference( "PlaylistHeight", plView.height );
}

function togglePL(){
 if("true"==theme.loadPreference("plViewer")){
  theme.savePreference("plViewer", "false");
  theme.closeView( "plView" );
 }else{
  theme.openView( "plView" );
 }
}

// vid area

function loadVidPrefs(){
 
 if("true"==theme.loadPreference("visViewer")){
  theme.savePreference("visViewer", "true");
  theme.closeView( "visView" );
 }

 theme.savePreference("videoViewOn","true");

 if(player.playState==3){
  checkVideoPlayerState();
 }

 var _vidRightDrawer = theme.loadPreference('vidRightDrawer');

 if (_vidRightDrawer != '--') {
  vidRightDrawer = (_vidRightDrawer.toLowerCase() == 'true') ? false : true;
 } else {
  vidRightDrawer = true;
 }

 if(player.playState==3){
  loadVidSize();
 }
 moveRightVidDrawer();
}

function saveVidPrefs(){
 theme.savePreference('vidRightDrawer',vidRightDrawer);
}


var vidRightDrawer = false;

function moveRightVidDrawer(){
 if(!vidRightDrawer){
  vidSettingsSub.visible = true;
  vidRightSideDrawer.moveTo(view.width-109,view.height-105,500);
  //VidOpener.moveto(view.width-109,videoView.height-95,500);
  VidArrow.visible = true;
  vidRightOpener.down = true;
  vidSettingsSub.enabled = true;
  VidTranspButtons.enabled = true;
  vidButtonsWood.enabled = true;
  vidRightDrawer = !vidRightDrawer;
 
 }else{
  vidRightSideDrawer.moveTo(view.width-109,view.height-184,500);
  vidSettingsSub.enabled = false;
  VidTranspButtons.enabled = false;
  vidButtonsWood.enabled = false;
  VidArrow.visible = false;
  vidRightDrawer = !vidRightDrawer;
 
 }
}

function checkRightDrawerEnd(){
 vidRightDrawer = vidRightDrawer;
 vidSettingsSub.visible = vidRightDrawer;
}

function openStateCheck(){
 if(player){
  switch(player.openState){
  case 13:
  if(player.currentMedia.ImageSourceWidth>0){
  if(player)
  {
  }
  break;
  }else{
  //resizeToMode();
  theme.currentViewID = 'mainView';
  break;
  }
   
  }
 }
 
}

function checkVideoPlayerState(){

 if (player){
  loadVidSize();
  switch (player.playState){
  case 0: //undefined

  break;
  case 1: //stopped
   
  break;
  case 2: //paused
   
  VidResize.visible = true;
  break;
  case 3: //playing
   
  VidResize.visible = true;
  switchBackButton.enabled = false;
  switchBackButton.uptooltip = "Return to Player Mode: Disabled During Playback";
  vidZoom.enabled = true;
   
  break;
  case 6: //buffering
   
  break;
  case 7: //waiting
   
  break;
  case 8: //media ended
   
  break;
  case 9: //Transitioning

  break;
  case 10: //Ready
   
  break;
  }
  vidColorBox.visible = false;
  centerBox.visible = true;
  }

 if (!player.controls.isAvailable("Stop")) {
  centerBox.visible = false;
   
  resizeToMode();
  vidZoom.enabled = false;
  switchBackButton.enabled = true;
  switchBackButton.upToolTip = "Return To Player Mode";
  VidResize.visible = false;

  if(player.openState==13){ // need to do a double check in order to size back to mode...
  view.width = 697;
  view.height = 156;
  vidColorBox.visible = true;
  }

 }
 //updateZoomToolTip();
}

function resizeToMode(){
 saveVidSize();
// view.width = 697;
// view.height = 156;
}

function videoZoom(){

 if(mediacenter.videoZoom < 76){
  mediacenter.videoZoom = 100;
 }else if(mediacenter.videoZoom <101){
  mediacenter.videoZoom = 150;
 }else if(mediacenter.videoZoom < 156){
  mediacenter.videoZoom = 200;
 }else{
  mediacenter.videoZoom = 75;
 }
 SnapToVideo();
 updateZoomToolTip();
}

function updateZoomToolTip(){

 vidZoom.upToolTip = "Video Size - [Current: " + mediacenter.videoZoom + "%] - [Next: ";

 if(mediacenter.videoZoom < 76){
  nextZoom = 100;
 }else if(mediacenter.videoZoom <101){
  nextZoom = 150;
 }else if(mediacenter.videoZoom < 156){
  nextZoom = 200;
 }else{
  nextZoom = 75;
 }

 vidZoom.upToolTip += nextZoom + "%]";
}

function loadVidSize(){
 
  var vidSizer = theme.loadPreference( "videoWidth" );

  if( "--" != vidSizer )
  {
  view.width = vidSizer;
  }

 var vidSizer = theme.loadpreference( "videoHeight" );

  if( "--" != vidSizer )
  {
  view.height = vidSizer;
  }

}

function saveVidSize(){
  theme.savepreference( "videoWidth", view.width );
  theme.savepreference( "videoHeight", view.height );
}

function SnapToVideo(){

 var zoom = mediacenter.videoZoom;
 var viewWidth = (player.currentMedia.imageSourceWidth * (zoom/100.00));
 var viewHeight = (player.currentMedia.imageSourceHeight * (zoom/100.00));

 view.width = viewWidth + 302;
 view.height = viewHeight + 160;

 saveVidSize();
}


// global prefs
function loadGlobalPrefs(){
  if ("true"==theme.loadPreference("plViewer")){
  theme.openView( 'plView' );
 }
  }

function UpdatePLToolTip(){
 if("true"==theme.loadPreference("plViewer")){
  plButton.upToolTip = "Hide Playlist";
 }else{
  plButton.upToolTip = "Show Playlist";
 }
}

function updateVisToolTip(){
 if("true"==theme.loadPreference("visViewer")){
  visButton.upToolTip = "Hide Visualizations";
 }else{
  visButton.upToolTip = "Show Visualizations";
 }
}

rc69
Have you tried looking for a more skinning oriented website on google? I'm not sure you will be able to find many people who know how to skin for WMP on here.

p.s. Moved to slightly more proper category.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2009 Invision Power Services, Inc.