// Copyright (C) 1997-2006 Autodesk, Inc., and/or its licensors.
// All rights reserved.
//
// The coded instructions, statements, computer programs, and/or related
// material (collectively the "Data") in these files contain unpublished
// information proprietary to Autodesk, Inc. ("Autodesk") and/or its licensors,
// which is protected by U.S. and Canadian federal copyright law and by
// international treaties.
//
// The Data is provided for use exclusively by You. You have the right to use,
// modify, and incorporate this Data into other products for purposes authorized 
// by the Autodesk software license agreement, without fee.
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND. AUTODESK
// DOES NOT MAKE AND HEREBY DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTIES
// INCLUDING, BUT NOT LIMITED TO, THE WARRANTIES OF NON-INFRINGEMENT,
// MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, OR ARISING FROM A COURSE 
// OF DEALING, USAGE, OR TRADE PRACTICE. IN NO EVENT WILL AUTODESK AND/OR ITS
// LICENSORS BE LIABLE FOR ANY LOST REVENUES, DATA, OR PROFITS, OR SPECIAL,
// DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES, EVEN IF AUTODESK AND/OR ITS
// LICENSORS HAS BEEN ADVISED OF THE POSSIBILITY OR PROBABILITY OF SUCH DAMAGES.

//
//  Alias Script File
//  MODIFY THIS AT YOUR OWN RISK
//
//  Creation Date:  October 24, 1996
//
//  Description:
//      This a helper script which will remove any or
//		all of the bookmarks (sets) of a certain type.
//
//  Input Arguments:
//      A list of bookmarks to remove (an empty list means remove all)
//		The type of the bookmark to remove
//
//  Return Value:
//      None.
//

proc int
stringArrayContains (string $array[], string $element)
{
	for ($entry in $array) {
		if ($entry == $element) {
			return (true);
		}
	}

	return (false);
}

global proc
removeBookmark (string $bookmarkList[], string $type)
{
	int $numBookmarks = size ($bookmarkList);

	// Find all the sets (bookmarks are fancy sets)
	//
	string $sets[] = `ls -sets`;
	for ($set in $sets) {
		// look for sets of $type
		//
		if (`sets -query -text $set` != $type) {
			continue;
		}
		if (($numBookmarks > 0) && !stringArrayContains ($bookmarkList, $set)) {
			continue;
		}
		delete $set;
	}
}
