当前位置: 首页>>代码示例>>C++>>正文


C++ Dialog::GetZOrdering方法代码示例

本文整理汇总了C++中Dialog::GetZOrdering方法的典型用法代码示例。如果您正苦于以下问题:C++ Dialog::GetZOrdering方法的具体用法?C++ Dialog::GetZOrdering怎么用?C++ Dialog::GetZOrdering使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Dialog的用法示例。


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

示例1: ShowDialog

void Screen::ShowDialog(Dialog *pDlg, bool fFade)
	{
	assert(pDlg);
	// do place console mode dialogs
	if (Application.isFullScreen || pDlg->IsViewportDialog())
		// exclusive or free dlg: center pos
		// evaluate own placement proc first
		if (!pDlg->DoPlacement(this, PreferredDlgRect))
			{
			if (pDlg->IsFreePlaceDialog())
				pDlg->SetPos((GetWidth() - pDlg->GetWidth()) / 2, (GetHeight() - pDlg->GetHeight()) / 2 + pDlg->IsBottomPlacementDialog()*GetHeight()/3);
			else if (IsExclusive())
				pDlg->SetPos((GetWidth() - pDlg->GetWidth()) / 2, (GetHeight() - pDlg->GetHeight()) / 2);
			else
				// non-exclusive mode at preferred viewport pos
				pDlg->SetPos(PreferredDlgRect.x+30, PreferredDlgRect.y+30);
			}
	// add to local component list at correct ordering
	int32_t iNewZ = pDlg->GetZOrdering(); Element *pEl; Dialog *pOtherDlg;
	for (pEl = GetFirst(); pEl; pEl = pEl->GetNext())
		if (pOtherDlg = pEl->GetDlg())
			if (pOtherDlg->GetZOrdering() > iNewZ)
				break;
	InsertElement(pDlg, pEl);
	// set as active, if not fading and on top
	if (!fFade && !pEl)
		// but not viewport dialogs!
		if (!pDlg->IsExternalDrawDialog())
			pActiveDlg = pDlg;
	// show it
	pDlg->fOK = false;
	pDlg->fShow = true;
	// mouse focus might have changed
	UpdateMouseFocus();
	}
开发者ID:lluchs,项目名称:clonk-rage,代码行数:35,代码来源:C4Gui.cpp


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