home *** CD-ROM | disk | FTP | other *** search
/ PC User 2001 August / APC_Aug2001_CD2.iso / features / web_dev / files / mwjpp516.exe / %MAINDIR% / Tools / Bookmark / removeBookmark.script < prev   
Encoding:
Text File  |  2001-06-19  |  1.6 KB  |  82 lines

  1. !!Script 
  2. // Copyright ⌐ 1997-1998 - Modelworks Software
  3. // @Modified build 497 cm20010225
  4.  
  5. /**
  6. @Tool: removeBookmark~displays the list of active bookmarks and lets 
  7. you choose bookmarks to remove.
  8. @Image: Remove Bookmarks Dialog@removeBookmark_Dialog.gif 
  9. @EndTool: 
  10. @Summary: removeBookmark~removes one or more bookmarks
  11. */
  12.  
  13. var gOutput = getOutput();
  14.  
  15. function DoCommand()
  16.     var bookmarkMap = getMapFile("Bookmarks");
  17.     
  18.     
  19.     var list = newList();
  20.     var position = bookmarkMap.getHeadPosition();
  21.     while (position && position.valid)
  22.     {
  23.         var next = bookmarkMap.getNext(position);
  24.         if (next.value)
  25.         {
  26.             if (next.value.valid())
  27.             {
  28.                 list.addTail(next);
  29.             }
  30.             else
  31.             {
  32.                 bookmarkMap.remove(next.value.hashKey);
  33.             }
  34.         }
  35.         else
  36.         {
  37.             bookmarkMap.removeAll();// Error
  38.         }
  39.     }
  40.     
  41.     if (list.count == 0)
  42.     {
  43.         alert("No bookmarks to remove");
  44.         return;
  45.     }
  46.     
  47.     list.sort();
  48.  
  49.     var result = chooseFromList("Choose bookmarks to remove",
  50.         list, getString, true, false);
  51.     
  52.     if (result)
  53.     { 
  54.         var position = result.getHeadPosition();
  55.         while (position && position.valid)
  56.         {
  57.             var next = result.getNext(position);
  58.             
  59.             bookmarkMap.remove(next.value.hashKey);
  60.             next.value.remove();
  61.         }
  62.     }
  63. }
  64.  
  65. // Callback to get the display string for each item in the
  66. // chooseFromList function
  67. function getString(item)
  68. {
  69.     // Assumes is is an association
  70.     var bookmark = item.value;
  71.     if (bookmark)
  72.     {
  73.         return bookmark.path + ":" + (bookmark.startLineIndex+1) + " - " + bookmark.description;
  74.     }
  75.     return "Invalid Bookmark";
  76. }
  77.  
  78. !!/Script
  79.  
  80.  
  81.