/*
Copyright (c) 2019 PTC Inc. and/or Its Subsidiary Companies. All Rights Reserved.
*/
/*---------------------- Pro/Toolkit Includes ------------------------*/
#include <ProToolkit.h>
#include <ProSelection.h>
/*---------------------- Application Includes ------------------------*/
#include <TestError.h>
/*---------------------- Function Prototypes -------------------------*/
ProError UserSurfRename();
/*============================================================================*\
Function: UserSurfRename()
Purpose: Rename Selected Surface
\*============================================================================*/
ProError UserSurfRename()
{
int sel_count;
ProError status;
ProCharName name;
ProModelitem p_mdl_item;
ProFileName msgfile;
ProName w_name;
ProSelection *psels=NULL;
/*----------------------------------------------------------------------------*\
Prompt user for selection of surface
\*----------------------------------------------------------------------------*/
ProStringToWstring(msgfile,"msg_uggeom.txt");
status = ProMessageDisplay(msgfile,"USER Select Surface to Rename:");
ERROR_CHECK("UserSurfRename","ProMessageDisplay",status);
if((ProSelect("surface",1,NULL,NULL,NULL,NULL,&psels, &sel_count) !=
PRO_TK_NO_ERROR) || (sel_count < 1))
return((int) PRO_TK_GENERAL_ERROR);
status = ProSelectionModelitemGet(psels[0],&p_mdl_item);
ERROR_CHECK( "UserSurfRename", "ProSelectionModelitemGet", status );
status = ProModelitemNameGet(&p_mdl_item,w_name);
ERROR_CHECK( "UserSurfRename","ProModelitemNameGet",status);
/*----------------------------------------------------------------------------*\
Display current name or "NONE" if surface is not named
\*----------------------------------------------------------------------------*/
if(status != PRO_TK_NO_ERROR)
ProTKSprintf(name,"NONE");
else
{
ProWstringToString(name,w_name);
}
status = ProMessageDisplay(msgfile,"USER Enter Name [%0s]:",name);
ERROR_CHECK( "UserSurfRename","ProMessageDisplay(Enter Name)",status);
status = ProMessageStringRead(PRO_NAME_SIZE,w_name);
ERROR_CHECK( "UserSurfRename","ProMessageStringRead",status);
if(status == PRO_TK_NO_ERROR)
{
status = ProModelitemNameSet(&p_mdl_item,w_name);
ERROR_CHECK( "UserSurfRename","ProModelitemNameSet",status);
}
ProMessageClear();
return(status);
}