• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C++ NotifyDependents函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C++中NotifyDependents函数的典型用法代码示例。如果您正苦于以下问题:C++ NotifyDependents函数的具体用法?C++ NotifyDependents怎么用?C++ NotifyDependents使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了NotifyDependents函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: SetAFlag

void TriObject::RescaleWorldUnits(float f) {
	if (TestAFlag(A_WORK1))
		return;
	SetAFlag(A_WORK1);
	for (int i=0; i<mesh.numVerts; i++)
		mesh.verts[i] *= f;	
	mesh.buildBoundingBox();
	NotifyDependents(FOREVER,PART_ALL,REFMSG_CHANGE);
	}
开发者ID:artemeliy,项目名称:inf4715,代码行数:9,代码来源:triobj.cpp


示例2: ApplyPaintWeights

BOOL  BonesDefMod::EndStroke()
	{
	theHold.Restore();
	ApplyPaintWeights(painterData[0].alt, NULL);
	theHold.Accept(GetString(IDS_PW_WEIGHTCHANGE));
	NotifyDependents(FOREVER, GEOM_CHANNEL, REFMSG_CHANGE);
	RebuildPaintNodes();
	return TRUE;
	}
开发者ID:2asoft,项目名称:xray,代码行数:9,代码来源:PainterInterface.cpp


示例3: switch

void MirrorMod::ActivateSubobjSel(int level, XFormModes& modes)
	{
	switch (level) {
		case 1: // Mirror center
			modes = XFormModes(moveMode,rotMode,nuscaleMode,uscaleMode,squashMode,NULL);
			break;		
		}
	NotifyDependents(FOREVER,PART_DISPLAY,REFMSG_CHANGE);
	}
开发者ID:2asoft,项目名称:xray,代码行数:9,代码来源:mirror.cpp


示例4: switch

void PFOperatorMaterialFrequency::SetReference(int i, RefTargetHandle rtarg)
{
	bool doUIRefresh = false;

	switch (i)
	{
	case kMaterialFrequency_reference_pblock:	
		_pblock() = (IParamBlock2*)rtarg;	
		break;
	case kMaterialFrequency_reference_material:	
		_material() = (Mtl *)rtarg;			
		if (updateFromRealMtl()) {
			NotifyDependents(FOREVER, PART_MTL, kPFMSG_UpdateMaterial, NOTIFY_ALL, TRUE);
			NotifyDependents(FOREVER, 0, kPFMSG_DynamicNameChange, NOTIFY_ALL, TRUE);
		}
		break;
	}
}
开发者ID:DimondTheCat,项目名称:xray,代码行数:18,代码来源:PFOperatorMaterialFrequency.cpp


示例5: MoveModBoxCMode

void SymmetryMod::BeginEditParams (IObjParam  *ip, ULONG flags,Animatable *prev) {
	mp_ip = ip;

	// Create sub object editing modes.
	mp_moveMode    = new MoveModBoxCMode(this,ip);
	mp_rotMode     = new RotateModBoxCMode(this,ip);
	mp_scaleMode = new UScaleModBoxCMode (this, ip);
	mp_nuScaleMode = new NUScaleModBoxCMode (this, ip);
	mp_squashMode = new SquashModBoxCMode (this, ip);

	TimeValue t = ip->GetTime();
	NotifyDependents(Interval(t,t), PART_ALL, REFMSG_BEGIN_EDIT);
	NotifyDependents(Interval(t,t), PART_ALL, REFMSG_MOD_DISPLAY_ON);
	SetAFlag(A_MOD_BEING_EDITED);

	// For PB2 we ask the ClassDesc2 to take care of the BeginEditParams
	symDesc.BeginEditParams(ip,this,flags,prev);
}
开发者ID:innovatelogic,项目名称:ilogic-vm,代码行数:18,代码来源:Symmetry.cpp


示例6: ClearAFlag

int BlobMesh::RenderEnd(TimeValue t)
{
	ClearAFlag(A_RENDER);
	inRender = FALSE;
	ivalid.SetEmpty();
	NotifyDependents(FOREVER,PART_ALL,REFMSG_CHANGE);
	return 0;

}
开发者ID:artemeliy,项目名称:inf4715,代码行数:9,代码来源:BlobMesh.cpp


示例7: switch

void FExtrudeMod::ActivateSubobjSel(int level, XFormModes& modes)
	{
	switch (level) {
		case 1: // Points
			modes = XFormModes(moveMode,NULL,NULL,NULL,NULL,NULL);
			break;		
		}
	NotifyDependents(FOREVER,PART_DISPLAY,REFMSG_CHANGE);
	}
开发者ID:artemeliy,项目名称:inf4715,代码行数:9,代码来源:fextrude.cpp


示例8: NotifyDependents

void SolidifyPW::ActivateSubobjSel(int level, XFormModes& modes)
{
	if (ip)
	{
		ip->PipeSelLevelChanged();
		NotifyDependents(FOREVER, PART_SELECT|PART_DISPLAY|PART_SUBSEL_TYPE, REFMSG_CHANGE);
	}

}
开发者ID:innovatelogic,项目名称:ilogic-vm,代码行数:9,代码来源:SolidifyPW.cpp


示例9: ClearAFlag

int ParticleMesherObject::RenderEnd(TimeValue t)
   {
   ClearAFlag(A_RENDER);
   lastTime = t - 99999;
   ivalid.SetEmpty();
   NotifyDependents(FOREVER,PART_ALL,REFMSG_CHANGE);
   return 0;

   }
开发者ID:innovatelogic,项目名称:ilogic-vm,代码行数:9,代码来源:particlemesher.cpp


示例10: ClearAFlag

void FExtrudeMod::EndEditParams (IObjParam *ip,ULONG flags,Animatable *next) {
	mp_ip = NULL;

	TimeValue t = ip->GetTime();

	// NOTE: This flag must be cleared before sending the REFMSG_END_EDIT
	ClearAFlag(A_MOD_BEING_EDITED);

	NotifyDependents(Interval(t,t), PART_ALL, REFMSG_END_EDIT);
	NotifyDependents(Interval(t,t), PART_ALL, REFMSG_MOD_DISPLAY_OFF);

	ip->DeleteMode(mp_moveMode);	
	if (mp_moveMode) delete mp_moveMode;
	mp_moveMode = NULL;	

	// For PB2 we ask the ClassDesc2 to take care of the EndEditParams - NH
	fextrudeDesc.EndEditParams(ip,this,flags,next);
}
开发者ID:innovatelogic,项目名称:ilogic-vm,代码行数:18,代码来源:fextrude.cpp


示例11: NotifyDependents

void RelaxMod::BeginEditParams( IObjParam *ip, ULONG flags,Animatable *prev ) {
	this->ip = ip;
	editMod = this;

	TimeValue t = ip->GetTime();
	NotifyDependents(Interval(t,t), PART_ALL, REFMSG_BEGIN_EDIT);
	NotifyDependents(Interval(t,t), PART_ALL, REFMSG_MOD_DISPLAY_ON);
	SetAFlag(A_MOD_BEING_EDITED);

	pmapParam = CreateCPParamMap(
		descParam,PARAMDESC_LENGTH,
		pblock,
		ip,
		hInstance,
		MAKEINTRESOURCE(IDD_RELAX),
		GetString (IDS_PARAMETERS),
		0);
}
开发者ID:innovatelogic,项目名称:ilogic-vm,代码行数:18,代码来源:relax.cpp


示例12: SubAnim

BOOL BaseLimitCtrl::AssignController(Animatable *in_control, int in_subAnim)
{
	if(GetLocked()==false)
	{
		if (in_subAnim == BASELIMIT_LIMITEDCTRL_SUBANIM) {
			Animatable *cont = SubAnim(in_subAnim);
			if(cont&&GetLockedTrackInterface(cont)&&GetLockedTrackInterface(cont)->GetLocked()==true)//the control is locked, don't assign over it.
				return FALSE;
			// Accept and replace the previous limited controller with the new one
			ReplaceReference(SubNumToRefNum(in_subAnim), (RefTargetHandle)in_control);
			NotifyDependents(FOREVER, 0, REFMSG_CHANGE);
			NotifyDependents(FOREVER, 0, REFMSG_SUBANIM_STRUCTURE_CHANGED);
			return TRUE;
		}
		return TRUE;
	}
	return FALSE;
}
开发者ID:innovatelogic,项目名称:ilogic-vm,代码行数:18,代码来源:LimitController.cpp


示例13: NotifyDependents

void ApplyVCMod::BeginEditParams(IObjParam *ip, ULONG flags,Animatable *prev)
{
	this->ip = ip;

	TimeValue t = ip->GetTime();
	NotifyDependents(Interval(t,t), PART_ALL, REFMSG_BEGIN_EDIT);
	NotifyDependents(Interval(t,t), PART_ALL, REFMSG_MOD_DISPLAY_ON);
	SetAFlag(A_MOD_BEING_EDITED);

	hPanel = ip->AddRollupPage(
		hInstance,
		MAKEINTRESOURCE(IDD_VCMOD_PANEL),
		panelDlgProc,
		GetString(IDS_AVCM_PANELTITLE),
		0);

	iValid.SetEmpty();
}
开发者ID:artemeliy,项目名称:inf4715,代码行数:18,代码来源:avcmod.cpp


示例14: DiscardTexHandle

// This is called as the user ends a strokes when the users has it set to always update
BOOL  PainterTextureSample::EndStroke()
	{

	texHandleValid.Empty();
	DiscardTexHandle();
	NotifyDependents(FOREVER, PART_TEXMAP, REFMSG_CHANGE);

	return TRUE;
	}
开发者ID:2asoft,项目名称:xray,代码行数:10,代码来源:PainterTextureSamplePainterInterface.cpp


示例15: NumKeys

void LinkTimeControl::MapKeys(TimeMap *map,DWORD flags)
{
    int n = NumKeys();
    BOOL changed = FALSE;
    if (n)
	{
		fOwner->ActivateSort(false);
		if (flags&TRACK_DOALL) {
				for (int i = 0; i < n; i++) {
						ChangeKeyTime( i, map->map( GetKeyTime(i) ) );
						changed = TRUE;
				}
		} else if (flags&TRACK_DOSEL) {
				BOOL slide = flags&TRACK_SLIDEUNSEL;
				TimeValue delta = 0, prev;
				int start, end, inc;
				if (flags&TRACK_RIGHTTOLEFT) {
						start = n-1;
						end = -1;
						inc = -1;
				}
				else {
						start = 0;
						end = n;
						inc = 1;
				}
				for (int i = start; i != end; i += inc) {
						if ( IsKeySelected(i) ) {
								prev = GetKeyTime(i);
								ChangeKeyTime( i,
										map->map( GetKeyTime(i) ) );
								delta = GetKeyTime(i) - prev;
								changed = TRUE;
								static int a=2;
								if (i!=a)
								{
									int b =0;
									b++;
								}

						}
						else if (slide) {
								ChangeKeyTime( i, GetKeyTime(i) + delta );
								changed = TRUE;
						}
				}
		}
		fOwner->ActivateSort(true);
		if (changed) {
			fOwner->LinkTimeChanged();
			NotifyDependents(FOREVER, PART_ALL,
						REFMSG_CHANGE);
		}
	}
    StdControl::MapKeys(map,flags);
}
开发者ID:artemeliy,项目名称:inf4715,代码行数:56,代码来源:link_timectrl.cpp


示例16: SetNode

void	MorphByBone::fnSetExternalNode(INode *node, const TCHAR *name,INode *exnode)
{
		int whichBone = this->GetBoneIndex(node); 
		int whichMorph = this->GetMorphIndex(node,name);
		SetNode(exnode,whichBone,whichMorph);
		NotifyDependents(FOREVER, PART_ALL, REFMSG_CHANGE);
		GetCOREInterface()->RedrawViews(GetCOREInterface()->GetTime());
		UpdateLocalUI();

}
开发者ID:innovatelogic,项目名称:ilogic-vm,代码行数:10,代码来源:MorphByBonePublishedFunctions.cpp


示例17: NotifyDependents

void Jiggle::SetMass(float mass, bool update)
{
	partsys->GetParticle(0)->SetMass(mass);
	partsys->Invalidate();
	if (update)
	{
		NotifyDependents(FOREVER, (PartID)PART_ALL, REFMSG_CHANGE);
		if(ip) ip->RedrawViews(ip->GetTime());
	}
}
开发者ID:artemeliy,项目名称:inf4715,代码行数:10,代码来源:jigglefunctions.cpp


示例18: NotifyDependents

void UnwrapMod::fnShowVertexConnectionList()
	{
	if (showVertexClusterList)
		showVertexClusterList = FALSE;
	else showVertexClusterList = TRUE;

	NotifyDependents(FOREVER,PART_SELECT,REFMSG_CHANGE);
	InvalidateView();

	}
开发者ID:2asoft,项目名称:xray,代码行数:10,代码来源:ToolUnfold.cpp


示例19: NotifyDependents

void RendSpline::BeginEditParams( IObjParam *ip, ULONG flags,Animatable *prev )
{
	this->ip = ip;

	ip->EnableShowEndResult(FALSE);

	TimeValue t = ip->GetTime();
	NotifyDependents(Interval(t,t), PART_ALL, REFMSG_BEGIN_EDIT);
	NotifyDependents(Interval(t,t), PART_ALL, REFMSG_MOD_DISPLAY_ON);
	SetAFlag(A_MOD_BEING_EDITED);	

	RendSplineDesc.BeginEditParams(ip, this, flags, prev);

	// pointcache_param_blk.SetUserDlgProc(new PointCacheParamsMapDlgProc(this));

	paramDlgProc = new RendSplineParamsMapDlgProc(this);
	rendspline_param_blk.SetUserDlgProc(paramDlgProc);

}
开发者ID:innovatelogic,项目名称:ilogic-vm,代码行数:19,代码来源:rendspline.cpp


示例20: NotifyDependents

// This is called as the user ends a strokes when the users has it set to always update
BOOL  PaintDeformTest::EndStroke()
{
//accept hold
    NotifyDependents(FOREVER, PART_GEOM, REFMSG_CHANGE);
    theHold.Accept(_T(GetString(IDS_PW_PAINT)));
//since this changes the mesh we need to update the mesh
    pPainter->UpdateMeshes(TRUE);

    return TRUE;
}
开发者ID:vasilenkomike,项目名称:xray,代码行数:11,代码来源:PaintDeformTestPainterInterface.cpp



注:本文中的NotifyDependents函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C++ NotifyError函数代码示例发布时间:2022-05-30
下一篇:
C++ NotifyChange函数代码示例发布时间:2022-05-30
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap