void plResponderProc::IRemoveCmdRollups()
{
    if (fCmdMap)
    {
        DestroyCPParamMap2(fCmdMap);
        fCmdMap = nil;
    }
    if (fWaitMap)
    {
        DestroyCPParamMap2(fWaitMap);
        fWaitMap = nil;
    }
}
示例#2
0
MonoFlectorParam::~MonoFlectorParam()
{
	if(theType)
	{	theType->theParam[type] = NULL;
		DestroyCPParamMap2(theType->pmap[type]);
		theType->pmap[type]=NULL;
	}
}
示例#3
0
void FaceDataToColorMod::EndEditParams( IObjParam *ip, ULONG flags,Animatable *next)
{
	theDlgProc.SetMod (NULL);
	if (mpMap) {
		DestroyCPParamMap2 (mpMap);
		mpMap = NULL;
	}
	mpInterface = NULL;
}
示例#4
0
void plComponentBase::DestroyRollups()
{
    if (!fCompPB)
        return;

    ParamBlockDesc2 *pd = fCompPB->GetDesc();
    plComponentClassDesc *cd = (plComponentClassDesc*)pd->cd;

    // This is a plAutoUIComp, we need to treat it differently
    if (cd->IsAutoUI())
    {
        plAutoUIClassDesc *autoCD = (plAutoUIClassDesc*)pd->cd;
        autoCD->DestroyAutoRollup();
    }
    // We're using a normal param block with auto UI
    else if (pd->flags & P_AUTO_UI)
    {
        if (pd->flags & P_MULTIMAP)
        {
            int nMaps = pd->map_specs.Count();
            for (int i = 0; i < nMaps; i++)
            {
                MapID id = pd->map_specs[i].map_id;
                // Destroy any parammap saved in the rollup
                IParamMap2 *map = fCompPB->GetMap(id);
                fCompPB->SetMap(nil, id);
                if (map)
                    DestroyCPParamMap2(map);
            }
        }
        else
        {
            // Destroy any parammap saved in the rollup
            IParamMap2 *map = fCompPB->GetMap();
            fCompPB->SetMap(nil);
            if (map)
                DestroyCPParamMap2(map);
        }
    }

    fCompPB->ReleaseDesc();
}