// Copyright (C) 1997-2004 Alias Systems Corp.
// 
// The information in this file is provided for the exclusive use of the
// licensees of Alias.  Such users have the right to use, modify,
// and incorporate this code into other products for purposes authorized
// by the Alias license agreement, without fee.
// 
// ALIAS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
// INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
// EVENT SHALL ALIAS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
// CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
// DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
// TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
// PERFORMANCE OF THIS SOFTWARE.

//
//  Alias Script File
//  MODIFY THIS AT YOUR OWN RISK
//
//  Creation Date:  18 April 1997
//
//  Description:
//      This implements the various global proc and variables needed 
//		for polygons
//

// these proc are called mainly from PolygonsMenu.mel and EditPolygonsMenu.
// however, we need to have them defined here, because polygons menu
// is read only once the user has pulled down the polygons menu:
// this could make the shelf and other user defined UI fail
// if the PolygonsMenu has not been created and these functions are called.


global proc string performPolyCollapse (int $ret)
{
	string $comp="";
	string $lbl;
	if ($ret)
		return "performPolyCollapse 0";
	if (`selectType -q -pf`) $comp="f";
	else if (`selectType -q -pv`) $comp="vtx";
	else if (`selectType -q -pe`) $comp="e";
	else if (`selectType -q -puv`) $comp="map";

	if (`selectMode -q -object`) { // Object Selection Mode
		// Check for RMB component selection 
		if (`selectType -q -ocm -facet`) $comp="f";
		else if (`selectType -q -ocm -edge`) $comp="e";
		else if (`selectType -q -ocm -vertex`) $comp="vtx";
		else if (`selectType -q -ocm -texture`) $comp="map";
	}
	
	if ($comp == "f") $lbl="polyCollapseFacet";
	else if ($comp == "e") $lbl="polyCollapseEdge";
	else if ($ret == 0) {
		warning "Polygon edges or faces must be selected to collapse them";
		return "";
	}
	return `polyPerformAction $lbl $comp 0`;
}
