HUnlock((Handle)pvtDataHdl);
ShowSetupTypeWin(void){	Str255 				next;	Str255 				back;	MenuHandle 			popupMenu;	PopupPrivateData ** pvtDataHdl;	unsigned char *		currMenuItem;	short 				i;/*		short 				numVols;	unsigned char **	volName;*/	Rect 				viewRect;	long				txtSize;	Str255				instLocTitle, selectFolder;	GrafPtr				oldPort;	GetPort(&oldPort);		if (gWPtr != NULL)	{		SetPort(gWPtr);			gCurrWin = kSetupTypeID; 		/* gControls->stw = (SetupTypeWin *) NewPtrClear(sizeof(SetupTypeWin));	*/		GetIndString(next, rStringList, sNextBtn);		GetIndString(back, rStringList, sBackBtn);			// malloc and get controls		gControls->stw->instType = GetNewControl( rInstType, gWPtr);		gControls->stw->instDescBox = GetNewControl( rInstDescBox, gWPtr);		gControls->stw->destLocBox = GetNewControl( rDestLocBox, gWPtr);		gControls->stw->destLoc = GetNewControl(rDestLoc, gWPtr);		if (!gControls->stw->instType || !gControls->stw->instDescBox || 			!gControls->stw->destLocBox || !gControls->stw->destLoc)		{			ErrorHandler();			return;		}		// populate popup button menus		HLock((Handle)gControls->stw->instType);		pvtDataHdl = (PopupPrivateData **) (*(gControls->stw->instType))->contrlData;		popupMenu = (MenuHandle) (**pvtDataHdl).mHandle;		for (i=0; i<gControls->cfg->numSetupTypes; i++)		{			HLock(gControls->cfg->st[i].shortDesc);			currMenuItem = CToPascal(*gControls->cfg->st[i].shortDesc);					HUnlock(gControls->cfg->st[i].shortDesc);			InsertMenuItem( popupMenu, currMenuItem, i);		}		HUnlock((Handle)gControls->stw->instType);		SetControlMaximum(gControls->stw->instType, gControls->cfg->numSetupTypes);		SetControlValue(gControls->stw->instType, gControls->opt->instChoice);			// setup type desc TE init and default item desc display		HLock((Handle)gControls->stw->instDescBox);		SetRect(&viewRect,  (*(gControls->stw->instDescBox))->contrlRect.left,							(*(gControls->stw->instDescBox))->contrlRect.top,							(*(gControls->stw->instDescBox))->contrlRect.right,							(*(gControls->stw->instDescBox))->contrlRect.bottom);		HUnlock((Handle)gControls->stw->instDescBox);			InsetRect(&viewRect, kTxtRectPad, kTxtRectPad);		gControls->stw->instDescTxt = (TEHandle) NewPtrClear(sizeof(TEPtr));		TextFont(systemFont);		TextFace(normal);		TextSize(12);			gControls->stw->instDescTxt = TENew( &viewRect, &viewRect);		HLock(gControls->cfg->st[gControls->opt->instChoice - 1].longDesc);		txtSize = strlen(*gControls->cfg->st[gControls->opt->instChoice - 1].longDesc);		TEInsert( *gControls->cfg->st[gControls->opt->instChoice - 1].longDesc, txtSize, gControls->stw->instDescTxt);		TESetAlignment( teFlushDefault, gControls->stw->instDescTxt);		HUnlock(gControls->cfg->st[gControls->opt->instChoice - 1].longDesc);/*		volName = (unsigned char **)NewPtrClear(sizeof(unsigned char *));	GetAllVInfo(volName, &numVols);		gControls->stw->numVols = numVols;	HLock((Handle)gControls->stw->destLoc);	pvtDataHdl = (PopupPrivateData **) (*(gControls->stw->destLoc))->contrlData;	popupMenu = (MenuHandle) (**pvtDataHdl).mHandle;	for (i=0; i<numVols; i++)	{		InsertMenuItem( popupMenu, volName[i], i);	}	InsertMenuItem( popupMenu, "\p-", i);	GetIndString(selectFolder, rStringList, sSelectFolder);	InsertMenuItem( popupMenu, selectFolder, i+1);		HUnlock((Handle)gControls->stw->destLoc);		SetControlMaximum(gControls->stw->destLoc, numVols+2); // 2 extra for divider and "Select Folder..." item	SetControlValue(gControls->stw->destLoc, 1);*/		GetIndString(selectFolder, rStringList, sSelectFolder);		SetControlTitle(gControls->stw->destLoc, selectFolder);		GetIndString(instLocTitle, rStringList, sInstLocTitle);		SetControlTitle(gControls->stw->destLocBox, instLocTitle);				// show controls		ShowControl(gControls->stw->instType);		ShowControl(gControls->stw->destLoc);		ShowNavButtons( back, next );			DrawDiskNFolder(gControls->opt->vRefNum, gControls->opt->folder);	}			SetPort(oldPort);}