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

  1. !!Script 
  2. // Copyright ⌐ 2001 - Miguel Angel Rojas
  3. // @Modified build 497 cm20010225
  4.  
  5. /**
  6. @Tool: gotoFirst~goes to the first bookmark.
  7. */
  8.  
  9. function DoCommand()
  10.     var bookmarkMap = getMapFile( "Bookmarks" );
  11.     
  12.     if ( bookmarkMap.count == 0 )
  13.     {
  14.         return;
  15.     }
  16.     
  17.     var list = getBookmarksAsList( bookmarkMap );
  18.     
  19.     if ( list.count == 0 )
  20.     {
  21.         return;
  22.     }
  23.     
  24.     var position = list.getHeadPosition();
  25.     
  26.     if ( position && position.valid )
  27.     {
  28.         setGlobal( "currentBookmark", 0);
  29.         
  30.         // alert( "gotoFirst="+getGlobal( "currentBookmark" ) );
  31.         
  32.         var first = list.getNext( position );
  33.         var bookmark = bookmarkMap.lookup( first.value.hashKey );
  34.         if (bookmark)
  35.         {
  36.             bookmark.go();
  37.         }
  38.     }
  39. }
  40.  
  41. function getBookmarksAsList( bookmarkMap )
  42.     var list = newList();
  43.     var position = bookmarkMap.getHeadPosition();
  44.     
  45.     while ( position && position.valid )
  46.     {
  47.         var next = bookmarkMap.getNext( position );
  48.         if (next.value.valid())
  49.         {
  50.             list.addTail(next);
  51.         }
  52.         else
  53.         {
  54.             bookmarkMap.remove(next.value.hashKey);
  55.         }
  56.     }
  57.     
  58.     list.sort(); // sort in order of creation
  59.  
  60.     return list;
  61. }
  62.  
  63. !!/Script
  64.