home *** CD-ROM | disk | FTP | other *** search
/ Freelog 117 / FreelogNo117-OctobreNovembre2013.iso / Theme / 8GadgetPack / 8GadgetPackSetup.msi / Gadgets.7z / Gadgets / AppLauncher.gadget / js / launcher.js < prev    next >
Text File  |  2010-04-18  |  20KB  |  697 lines

  1. // copyright 2007 Dean Laforet, Simon Paterson
  2. // do not use or modify code without permission.
  3.  
  4. var makeIconBigger = "yes";
  5. var showHighlight = "no";
  6. var cancelBodyOver = 0;
  7.  
  8. var settingsDir = oShell.SpecialFolders("Appdata")+"\\App Launcher Gadget";
  9. write("settingsDir", settingsDir);
  10.  
  11. var bDebug = oFSO.FileExists(gadgetPath+"\\debug.txt");
  12. try{
  13.     if (bDebug)
  14.         var debugLogFile = oFSO.OpenTextFile(gadgetPath+"\\debug.txt", 2);
  15. } catch(err) {bDebug = false;}
  16.  
  17. document.onreadystatechange = function(){
  18. try{
  19.   if(document.readyState=="complete"){
  20.     System.Gadget.settingsUI = "settings.html";
  21.     System.Gadget.onSettingsClosed = settingsClosed;
  22.     getLinks();
  23.     setRbIcons();
  24.     createLayout();
  25.     createBorder();
  26.     System.Shell.RecycleBin.onRecycleBinChanged = updateRB;
  27.   }        
  28. } catch(err) {debugLog("onreadystatechange: "+err.name+" - "+err.message)}
  29. }
  30.  
  31. function settingsClosed(event){
  32. try{
  33.     cancelBodyOver = 0;
  34.   getLinks();
  35.   setRbIcons();
  36.     createLayout();
  37.   createBorder();
  38. } catch(err) {debugLog("SettingsClosed: "+err.name+" - "+err.message)}
  39. }
  40.  
  41. function createLayout(){
  42. try{
  43.   System.Gadget.background = "/images/backgrounds/bg" + bgSetting + ".jpg";
  44.   appInfo.style.color = textColorSetting;
  45.   tabDiv.style.color = textColorSetting;
  46.  
  47.     if (infoSetting == 1 || tabsSetting == 1){
  48.     $("appInfo").style.display="";
  49.     bottomPadding = 18;
  50.     }
  51.     else{
  52.     $("appInfo").style.display="none";
  53.     bottomPadding = 4;
  54.     }
  55.  
  56.     if (perRowSetting == 0){
  57.         perRow = 3;
  58.         imgSmall = 32;
  59.         imgLarge = 38;
  60.     wh = "?width=32&height=32";
  61.     wh2 = "?width=38&height=38";
  62.         cellSize = 40;
  63.     tabMarginTop = "4px";
  64.     if (linksList.length < 4 && infoSetting == 0){
  65.       tabMarginTop = "6px";
  66.     }
  67.     }
  68.     else{
  69.         perRow = 4;
  70.         imgSmall = 24;
  71.         imgLarge = 28;
  72.     wh = "?width=24&height=24";
  73.     wh2 = "?width=28&height=28";
  74.         cellSize = 30;
  75.     tabMarginTop = "2px";
  76.         if (linksList.length < 5){
  77.       tabMarginTop = "9px";
  78.         }
  79.     }
  80.  
  81.     var imgCounter = 1;
  82.     var rowCounter = 1;
  83.   var tabCounter = 1;
  84.   
  85.     if (tabsSetting == 1){
  86.     tmpLinks = new Array(); tmpIcons = new Array(); tmpSwitch = new Array();
  87.     var index = 0;
  88.     for (var i=0; i< linksList.length; i++){
  89.       if (linksList[i] == "LauncherDivider") continue;  // strip dividers if using tabs
  90.       tmpLinks[index] = linksList[i];
  91.       tmpIcons[index] = iconList[i];
  92.       tmpSwitch[index] = switchList[i];
  93.       index++;
  94.     }
  95.     linksList = tmpLinks; iconList = tmpIcons; switchList = tmpSwitch;
  96.     tabRows = Math.ceil(linksList.length/4/perRow);
  97.     if (tabRows == 1 && perRow == 4) tabMarginTop = "9px";
  98.   }
  99.     else tabRows = 99;
  100.     
  101.     launcherDiv.innerHTML = "";
  102.     oDiv = document.createElement("div");
  103.     oDiv.id = "tab1";
  104.     oDiv.style.paddingTop = tabMarginTop;
  105.  
  106.   var oTable = createTable();
  107.   row = oTable.insertRow();
  108.   row.className = "launcherRow";
  109.  
  110.     for (var i=0; i < linksList.length; i++){
  111.         setFilePaths(i);
  112.  
  113.         if (thisPath != "LauncherDivider"){
  114.       src = "gimage:///" + src + wh;
  115.  
  116.       cell = row.insertCell();
  117.       cell.id = "cell"+i;
  118.       cell.className = "cell";
  119.       cell.style.width = cellSize;
  120.       cell.style.height = cellSize;
  121.       var oImg = document.createElement("img");
  122.       oImg.style.width = imgSmall;
  123.       oImg.style.height = imgSmall;
  124.       oImg.setAttribute("link",thisPath);
  125.       oImg.id = imageID;
  126.       oImg.src = src;
  127.       oImg.onclick = new Function(""+execType+"");
  128.       oImg.onmouseover = function(){hiliteLink(0)};
  129.       oImg.onmouseout = function(){unHiliteLink(0)};
  130.       oImg.ondragenter = new Function(""+dragEnter+"");
  131.       oImg.ondragover = new Function(""+dragOver+"");
  132.       oImg.ondragleave = new Function(""+dragLeave+"");
  133.       oImg.ondrop = new Function(""+dragDrop+"");
  134.       cell.appendChild(oImg);
  135.  
  136.       if (imgCounter == perRow && i != (linksList.length-1)){
  137.         imgCounter = 0;
  138.         oDiv.appendChild(oTable);
  139.  
  140.         if (tabRows == rowCounter){
  141.           tabCounter++;
  142.           launcherDiv.appendChild(oDiv);
  143.           oDiv = document.createElement("div");
  144.           oDiv.id = "tab"+tabCounter;
  145.           oDiv.style.paddingTop = tabMarginTop;
  146.           
  147.           rowCounter = 0;
  148.         }
  149.  
  150.         if (linksList[(i+1)] != "LauncherDivider"){
  151.           var oTable = createTable();
  152.           row = oTable.insertRow();
  153.           row.className = "launcherRow";
  154.  
  155.           rowCounter++;
  156.         }
  157.       }
  158.       imgCounter++;
  159.         }
  160.         else{
  161.       if (imgCounter != 1){
  162.         if (centreSetting == 1){
  163.           for (var j=imgCounter ; j <= perRow ; j++){
  164.             cell = row.insertCell();
  165.             cell.className = "emptyCell";
  166.             cell.style.width = cellSize;
  167.             cell.style.height = cellSize;
  168.             cell.innerHTML = " ";
  169.           }
  170.         }
  171.         oDiv.appendChild(oTable);
  172.       }
  173.  
  174.       var oTable = createTable();
  175.       row = oTable.insertRow();
  176.       row.className = "divider";
  177.       cell = row.insertCell();
  178.       var oImg = document.createElement("img");
  179.       oImg.src = src;
  180.       cell.appendChild(oImg);
  181.       oDiv.appendChild(oTable);
  182.  
  183.       bottomPadding += 2;
  184.       imgCounter = 1;
  185.       
  186.       if (linksList[i-1] == "LauncherDivider") rowCounter--;
  187.       
  188.       if (i != (linksList.length-1)){
  189.         var oTable = createTable();
  190.         row = oTable.insertRow();
  191.         row.className = "launcherRow";
  192.  
  193.         rowCounter++;
  194.       }
  195.         }
  196.   }
  197.  
  198.   if (imgCounter != 1 && centreSetting == 1){
  199.     for (var i=imgCounter ; i <= perRow ; i++){
  200.       cell = row.insertCell();
  201.       cell.className = "emptyCell";
  202.       cell.style.width = cellSize;
  203.       cell.style.height = cellSize;
  204.       cell.innerHTML = " ";
  205.     }
  206.   }
  207.  
  208.   oDiv.appendChild(oTable);
  209.   launcherDiv.appendChild(oDiv);
  210.   
  211.   for (var j = 2; j < 5; j++){
  212.     if (!$("tab"+j)){
  213.       oDiv = document.createElement("div");
  214.       oDiv.id = "tab"+j;
  215.       oDiv.style.display = "none";
  216.       launcherDiv.appendChild(oDiv);
  217.     }
  218.     else{
  219.       $("tab"+j).style.display = "none";
  220.     }
  221.   }
  222.  
  223.     if (tabsSetting == 0) { document.body.style.height = parseInt(rowCounter*cellSize+bottomPadding)+"px"; }
  224.     else{ document.body.style.height = parseInt(tabRows*cellSize+bottomPadding)+"px";    }
  225.  
  226.     updateRB();
  227. } catch(err) {debugLog("CreateLayout: "+err.name+" - "+err.message);}
  228. }
  229.  
  230. function setFilePaths(i){
  231. try{
  232.     imageID = "img"+i;
  233.     thisPath = linksList[i];
  234.         
  235.   thisTitle = oFSO.GetFileName(thisPath);
  236.  
  237.   execType = "execLink()";
  238.  
  239.     dragEnter = "event.returnValue = false";
  240.     dragOver = "event.returnValue = false";
  241.     dragLeave = "event.returnValue = false";
  242.     dragDrop = "event.returnValue = false";
  243.  
  244.     tmpPath = thisPath;
  245.  
  246.     fileExtension = oFSO.GetExtensionName(thisPath).toLowerCase();
  247.     if (fileExtension == "lnk"){
  248.         oLink = oShell.CreateShortcut(thisPath);
  249.         tmpPath = oLink.TargetPath;
  250.         if (targetLink == 0){
  251.             if (oFSO.GetFileName(tmpPath).toLowerCase() != "hlsw.exe"){
  252.                 thisPath = tmpPath;
  253.                 linksList[i] = thisPath;
  254.                 writeFilePathsFile();
  255.             }
  256.         }
  257.         else if (targetLink == 2){ 
  258.       tmpPath = thisPath;
  259.       theIconLocation = oLink.iconLocation;
  260.       if ((theIconLocation.length >= 2) && (theIconLocation.substr(theIconLocation.length - 2).toLowerCase() == ",0")){
  261.         tmpPath = theIconLocation.substr(0, (theIconLocation.length - 2));
  262.         if (tmpPath== ""){
  263.            tmpPath = oLink.targetPath;
  264.         }
  265.       }
  266.         }
  267.         else{}
  268.     }
  269.         
  270.     if (thisTitle=="iTunesIco.exe" || thisTitle=="iTunes.lnk"){
  271.     iTunesPath = pfPath + "\\iTunes\\iTunes.exe";
  272.     if (oFSO.FileExists(iTunesPath)){
  273.       linksList[i] = iTunesPath;
  274.       writeFilePathsFile();
  275.         }
  276.     }
  277.  
  278.     if (thisPath == "My Computer"){
  279.         src = myComp;
  280.     }
  281.     else if (thisPath == "Network"){
  282.         src = network;
  283.     }
  284.     else if (thisPath == "Network VAIO"){
  285.         src = network;
  286.     }
  287.     else if (thisPath == "Control Panel Category"){
  288.         src = control;
  289.     }
  290.     else if (thisPath == "Control Panel Classic"){
  291.         src = control;
  292.     }
  293.     else if (thisPath == "Control Panel VAIO"){
  294.         src = control;
  295.     }
  296.     else if (thisPath == "Internet Explorer"){
  297.         src = ie;
  298.     }
  299.     else if (thisPath == "Recycle Bin"){
  300.         src = rbEmpty;
  301.         imageID = "rbHere";    
  302.         dragOver = "hiliteLink(1);event.returnValue = false";
  303.         dragLeave = "unHiliteLink(1);event.returnValue = false";
  304.         dragDrop = "recycleBinDragDropped()";
  305.         execType = "recycleBin()";
  306.     }
  307.     else if (thisPath == "IE Favorites"){
  308.         src = gadgetPath + "\\images\\FavsIE.png";
  309.         execType = "showFavs('ie')";
  310.     }
  311.     else if (thisPath == "Firefox Bookmarks"){
  312.         src = gadgetPath + "\\images\\FavsFF.png";
  313.         execType = "showFavs('ff')";
  314.     }
  315.     else if (thisPath == "Opera Bookmarks"){
  316.         src = gadgetPath + "\\images\\FavsOP.png";
  317.         execType = "showFavs('op')";
  318.     }
  319.     else if (thisPath == "LauncherDivider"){
  320.         src = "/images/divLong.png";
  321.     }
  322.     else if (oFSO.FolderExists(thisPath)){
  323.     src = thisPath;
  324.         if (folderSetting != 2){
  325.       dragOver = "hiliteLink(3);event.returnValue = false";
  326.       dragLeave = "unHiliteLink(3);event.returnValue = false";
  327.       dragDrop = "moveToFolder(linksList["+i+"])";
  328.       execType = "execFolder()";
  329.     }
  330.     }
  331.     else{
  332.     filePath = thisPath;
  333.         if (!oFSO.FileExists(filePath)){
  334.             src = gadgetPath+"\\images\\Error.png";
  335.             execType = "javascript:void(0)";
  336.         }
  337.         else{
  338.             src = tmpPath;
  339.             if (dragSetting != 0){
  340.                 dragOver = "hiliteLink(2);event.returnValue = false";
  341.                 dragLeave = "unHiliteLink(2);event.returnValue = false";
  342.                 dragDrop = "fileDropExec()";
  343.             }
  344.             if (switchList[i] != "none"){
  345.         execType = "execWithSwitches("+i+")";
  346.             }
  347.         }
  348.     }
  349.  
  350.     if (iconList[i] != "none"){
  351.         src = iconList[i];
  352.     if (!oFSO.FileExists(src)){
  353.       if (!oFSO.FolderExists(src)) src = gadgetPath+"\\images\\Error.png";
  354.     }
  355.      }
  356. } catch(err) {debugLog("setFilePaths: "+err.name+" - "+err.message);}
  357. }
  358.  
  359. function createTable(){
  360.   var oTable = document.createElement("table");
  361.   oTable.className = "launcherTable";
  362.   oTable.setAttribute("cellPadding",0);
  363.   oTable.setAttribute("cellSpacing",0);
  364.   oTable.setAttribute("border",0);
  365.   return oTable;
  366. }
  367.  
  368. function execLink(passLink){
  369. try{
  370.   var getLink = event.srcElement;
  371.   var thisPath = getLink.link;
  372.   if (passLink){
  373.     thisPath = passLink;
  374.   }
  375.  
  376.     if (thisPath == "My Computer"){
  377.         System.Shell.execute("::{20D04FE0-3AEA-1069-A2D8-08002B30309D}");
  378.     }
  379.     else if (thisPath == "Network"){
  380.         System.Shell.execute("::{F02C1A0D-BE21-4350-88B0-7367FC96EF3C}");
  381.     }
  382.     else if (thisPath == "Network VAIO"){
  383.         System.Shell.execute("::{7007ACC7-3202-11D1-AAD2-00805FC1270E}");
  384.     }
  385.     else if (thisPath == "Control Panel Category"){
  386.         System.Shell.execute("::{26EE0668-A00A-44D7-9371-BEB064C98683}");
  387.     }
  388.     else if (thisPath == "Control Panel Classic"){
  389.         System.Shell.execute("::{21EC2020-3AEA-1069-A2DD-08002B30309D}");
  390.     }
  391.     else if (thisPath == "Control Panel VAIO"){
  392.         System.Shell.execute("::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}");
  393.     }
  394.     else if (thisPath == "Internet Explorer"){
  395.     System.Shell.execute("::{871C5380-42A0-1069-A2EA-08002B30309D}");
  396.     }
  397.     else{
  398.     if (oFSO.FileExists(thisPath) || oFSO.FolderExists(thisPath)){
  399.       System.Shell.execute(thisPath);
  400.     }
  401.     }
  402.   $("appInfo").innerText="";
  403.   getLink.blur();
  404.   return false;
  405. } catch(err) {debugLog("execLink: "+err.name+" - "+err.message)}
  406. }
  407.  
  408. function moveToFolder(thisFolder){
  409. try{
  410.   var sFile;
  411.   cancelBodyOver = 0;
  412.   for (var i=0 ; System.Shell.itemFromFileDrop(event.dataTransfer, i) != null ; i++){
  413.     sFile = System.Shell.itemFromFileDrop(event.dataTransfer, i).path;
  414.     if (oFSO.FolderExists(sFile)){
  415.       if (folderSetting == 0){
  416.         oFSO.MoveFolder(sFile, thisFolder+"\\");
  417.       }
  418.       else{
  419.         oFSO.CopyFolder(sFile, thisFolder+"\\", false);
  420.       }
  421.     }
  422.     else{
  423.       if (folderSetting == 0){
  424.         oFSO.MoveFile(sFile, thisFolder+"\\");
  425.       }
  426.       else{
  427.         oFSO.CopyFile(sFile, thisFolder+"\\", false);
  428.       }
  429.     }
  430.   }
  431.   $("appInfo").innerText="";
  432.   return false;
  433. }    catch(err)    {debugLog("moveToFolder: "+err.name+" - "+err.message);}
  434. }
  435.  
  436. function recycleBin(){
  437. try{
  438.     System.Gadget.Flyout.file = "flyoutRB.html";
  439.     System.Gadget.Flyout.show = !System.Gadget.Flyout.show;
  440. } catch(err) {debugLog("recycleBin: "+err.name+" - "+err.message)}
  441. }
  442.  
  443. function updateRB(){
  444. try{
  445.     var link = $("rbHere");
  446.     if(link){
  447.         binCount = System.Shell.RecycleBin.fileCount + System.Shell.RecycleBin.folderCount;
  448.         if (binCount == 0){
  449.             link.src = "gimage:///" + rbEmpty + wh;
  450.         }
  451.         else{
  452.             link.src = "gimage:///" + rbFull + wh;
  453.         }
  454.     }
  455. } catch(err) {debugLog("updateRB: "+err.name+" - "+err.message)}
  456. }
  457.  
  458. function recycleBinDragDropped(){
  459. try{
  460.   var sFile;
  461.   cancelBodyOver = 0;
  462.   for (var i=0 ; System.Shell.itemFromFileDrop(event.dataTransfer, i) != null ; i++){
  463.     sFile = System.Shell.itemFromFileDrop(event.dataTransfer, i).path;
  464.     if (LdeleteSetting == 0){
  465.       System.Shell.RecycleBin.deleteItem(sFile);
  466.     }
  467.     else{
  468.       if (oFSO.FileExists(sFile)) oFSO.DeleteFile(sFile);
  469.       else if (oFSO.FolderExists(sFile)) oFSO.DeleteFolder(sFile);
  470.     }
  471.   }
  472.   $("appInfo").innerText="";
  473.   return false;
  474. }    catch(err)    {    debugLog("recycleBinDragDropped: "+err.name+" - "+err.message);    }
  475. }
  476.  
  477. function setRbIcons(){
  478. try{
  479.     if (oFSO.FileExists(rbSettingsFile)){    
  480.     defaultFile = oFSO.OpenTextFile(rbSettingsFile, 1, false);
  481.         rbEmpty = defaultFile.ReadLine();
  482.         rbFull = defaultFile.ReadLine();
  483.         defaultFile.Close();
  484.     }
  485.     else{
  486.     rbEmpty = gadgetPath+"\\images\\rbEmpty.ico";
  487.     rbFull = gadgetPath+"\\images\\rbFull.ico";
  488.     }
  489. } catch(err) {debugLog("SetRbIcons: "+err.name+" - "+err.message)}
  490. }
  491.  
  492. function fileDropAdd(){
  493. try{
  494.     if (dragSetting != 1 && System.Shell.itemFromFileDrop(event.dataTransfer, 0) != null){
  495.     var sFile;
  496.         for (var i=0; System.Shell.itemFromFileDrop(event.dataTransfer, i) != null; i++){
  497.             sFile = System.Shell.itemFromFileDrop(event.dataTransfer, i).path;
  498.             addOneToList(sFile);
  499.         }
  500.  
  501.         createLayout();
  502.  
  503.     writeFilePathsFile();
  504.     writeIconPathsFile();
  505.     writeSwitchFile();
  506.   }
  507.   $("appInfo").innerText="";
  508.   return false;
  509. } catch(err) {debugLog("fileDropAdd: "+err.name+" - "+err.message);}
  510. }
  511.  
  512. function fileDropExec(){
  513. try{
  514.   var sFile;
  515.   cancelBodyOver = 0;
  516.     for (var i=0 ; System.Shell.itemFromFileDrop(event.dataTransfer, i) != null ; i++){
  517.         sFile = System.Shell.itemFromFileDrop(event.dataTransfer, i).path;
  518.  
  519.         tmpLink = event.srcElement.link;
  520.  
  521.         if (oFSO.FileExists(tmpLink)){
  522.       System.Shell.execute(tmpLink, "\""+sFile+"\"", null, "open");
  523.         }
  524.     }
  525.   $("appInfo").innerText="";
  526.   return false;
  527. } catch(err) {debugLog("fileDropExec: "+err.name+" - "+err.message)}
  528. }
  529.  
  530. function execWithSwitches(index){
  531. try{
  532.   var thisFile = linksList[index];
  533.   var thisSwitch = switchList[index];
  534.  
  535.     if (oFSO.FileExists(thisFile)){
  536.     System.Shell.execute(thisFile, "\""+thisSwitch+"\"");
  537.   }
  538.   return false;
  539. } catch(err) {debugLog("execWithSwitches: "+err.name+" - "+err.message)}
  540. }
  541.  
  542. function execFolder(){
  543. try{
  544.   var getLink = event.srcElement.link;
  545.   if (folderOpenSetting == 1){
  546.     write("folderLocation", getLink);
  547.     showFavs('folder');
  548.   }
  549.   else{
  550.     execLink(getLink);
  551.   }
  552.   return false;
  553. } catch(err) {debugLog("execFolder: "+err.name+" - "+err.message)}
  554. }
  555.  
  556. function addOneToList(newOne){
  557. try{
  558.     var n = linksList.length;
  559.     linksList[n] = newOne;
  560.     iconList[n] = "none";
  561.     switchList[n] = "none";
  562. } catch(err) {debugLog("addOneToList: "+err.name+" - "+err.message)}
  563. }
  564.  
  565. function showFavs(type){
  566. try{
  567.   write("FavMeth", type);
  568.     System.Gadget.Flyout.file = "flyoutFav.html";
  569.     System.Gadget.Flyout.show = !System.Gadget.Flyout.show;
  570. } catch(err) {debugLog("showFavs: "+err.name+" - "+err.message)}
  571. }
  572.  
  573. function hiliteLink(hovType){
  574. try{
  575.   var img = event.srcElement;
  576.   thisPath = img.link;
  577.   thisTitle = oFSO.GetBaseName(thisPath);
  578.   tabDiv.style.display = "none";
  579.  
  580.   if (dragSetting != 0 && hovType){
  581.     document.body.ondrop = "event.returnValue = false";
  582.   }
  583.  
  584.   if (oFSO.DriveExists(thisPath)){
  585.     d = oFSO.GetDrive(oFSO.GetDriveName(thisPath));
  586.         thisTitle = thisPath+" {"+parseInt(d.FreeSpace/1024/1024/1024)+" GB free}";
  587.     }
  588.  
  589.   if (img.link != null){
  590.     if (showHighlight=="yes"){
  591.       img.style.backgroundImage = "url(/images/highlight.png)";  // setting off by default
  592.     }
  593.     if (makeIconBigger=="yes"){
  594.       img.style.width = imgLarge;
  595.       img.style.height = imgLarge;
  596.       img.src = img.src.substr(0, img.src.length-19)+wh2;
  597. //      img.style.msInterpolationMode = "bicubic";
  598.     }
  599.     img.style.cursor = "hand";
  600.         
  601.     if (hovType == 1){
  602.       cancelBodyOver = 1;
  603.       displayThis = "Delete this item.";
  604.     }
  605.     else if (hovType == 2){
  606.       cancelBodyOver = 1;
  607.       displayThis = "Open with " + thisTitle + ".";
  608.     }
  609.     else if (hovType == 3){
  610.       cancelBodyOver = 1;
  611.       if (folderSetting == 0){
  612.         displayThis = "Move to " + thisTitle + ".";
  613.       }
  614.       else{
  615.         displayThis = "Copy to " + thisTitle + ".";
  616.       }
  617.     }
  618.     else{
  619.       displayThis = thisTitle;
  620.       if(thisPath == "Recycle Bin"){
  621.         rbCount = System.Shell.RecycleBin.fileCount + " files, " + System.Shell.RecycleBin.folderCount + " folders";
  622.         displayThis = rbCount;
  623.       }
  624.     }
  625.     if (infoSetting == 1){
  626.       $("appInfo").innerText=displayThis;
  627.     }
  628.   }
  629.   else{
  630.     event.returnValue = false;
  631.   }
  632. } catch(err) {debugLog("HiliteLinks: "+err.name+" - "+err.message)}
  633. }
  634.  
  635. function unHiliteLink(hovType){
  636. try{
  637.   var img = event.srcElement;
  638.  
  639.   document.body.ondrop = fileDropAdd;
  640.   tabDiv.style.display = "none";
  641.   
  642.   if (img.link != null){
  643.     img.style.backgroundImage = "";
  644.     if (makeIconBigger=="yes"){
  645.       img.style.width = imgSmall;
  646.       img.style.height = imgSmall;
  647.       img.src = img.src.substr(0, img.src.length-19)+wh;
  648. //      img.style.msInterpolationMode = "bicubic";
  649.     }
  650.     img.style.cursor = "default";
  651.     $("appInfo").innerText = "";
  652.     cancelBodyOver = 0;
  653.   }
  654.   else{
  655.     event.returnValue = false;
  656.   }
  657. } catch(err) {debugLog("UnhiliteLinks: "+err.name+" - "+err.message)}
  658. }
  659.  
  660. function addTipOver(){
  661. try{
  662.   if (dragSetting != 1){
  663.     if ( cancelBodyOver == 0){
  664.       $("appInfo").innerText="Add to launcher.";
  665.     }
  666.   }
  667.   event.returnValue = false;
  668. } catch(err) {debugLog("addTipOver: "+err.name+" - "+err.message)}
  669. }
  670.  
  671. function addTipOut(){
  672. try{
  673.   $("appInfo").innerText="";
  674.   event.returnValue = false;
  675. } catch(err) {debugLog("addTipOut: "+err.name+" - "+err.message)}
  676. }
  677.  
  678. function createBorder(){
  679.   border.innerHTML = "<img src=\"images/borderTop.png\" style=\"position:absolute;top:0;left:0;\" />";
  680.   border.innerHTML += "<img src=\"images/borderBtm.png\" style=\"position:absolute;bottom:0;left:0;\" />";
  681.   border.innerHTML += "<img src=\"images/borderL.png\" style=\"position:absolute;top:0;left:0;\" />";
  682.   border.innerHTML += "<img src=\"images/borderR.png\" style=\"position:absolute;top:0;right:0;\" />";
  683.   if (cornerSetting == 1){
  684.     border.innerHTML += "<img src=\"images/borderTL.png\" style=\"position:absolute;top:0;left:0;\" />";
  685.     border.innerHTML += "<img src=\"images/borderTR.png\" style=\"position:absolute;top:0;right:0;\" />";
  686.     border.innerHTML += "<img src=\"images/borderBL.png\" style=\"position:absolute;bottom:0;left:0;\" />";
  687.     border.innerHTML += "<img src=\"images/borderBR.png\" style=\"position:absolute;bottom:0;right:0;\" />";
  688.   }
  689. }
  690.  
  691. function showTabs(){
  692.   $("appInfo").innerText="";
  693.   if (tabsSetting == 1) tabDiv.style.display = "";
  694.   event.returnValue = false
  695. }
  696.  
  697.