Exemplo n.º 1
0
// 释放操作对象
void DeleteOperator()
{
	//AFX_MANAGE_STATE(AfxGetStaticModuleState());
	ProWindowRepaint(PRO_VALUE_UNUSED);
	//DestroyAllDialog();
	//ActivateCurrentPreWindow();
}
Exemplo n.º 2
0
// 关于...
void OnAbout()
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState());
	DestroyAllDialog();

	CAboutDlg aboutDlg;
	aboutDlg.DoModal();
	ProWindowRepaint(PRO_VALUE_UNUSED);
}
Exemplo n.º 3
0
// 网络连接的响应函数
void ConServerActFn()
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState());
	DestroyAllDialog();

	// 如果服务器连接,校验是否正确即可。
	CDlgConServer serverDlg;
	SClientInfo clientInfo;
	LoadServerData(clientInfo);
	serverDlg.m_clientInfo = clientInfo;
	if (serverDlg.DoModal() == IDCANCEL)
	{
		ProWindowRepaint(PRO_VALUE_UNUSED);
		return;
	}

	ProWindowRepaint(PRO_VALUE_UNUSED);

	// 重新设置服务器的信息
	ConSmartServer(FALSE, serverDlg.m_clientInfo);
}
Exemplo n.º 4
0
// 取消当前操作
void CancelOperator()
{
	ProWindowRepaint(PRO_VALUE_UNUSED);
}
Exemplo n.º 5
0
BOOL CSD3DDrawingColorCheck::DoAction(void *pData, const CheckData &checkData)
{
	pData;
	CStringArray arrCheckRule;
	double dRed;
	double dGreen;
	double dBlue;
	arrCheckRule.Copy(checkData.checkRule.arrRuleContent);
	int nCount = (int)arrCheckRule.GetSize();
	if (nCount == 3)
	{
		for (int i = 0; i < 1; i++)
		{
			if (!IsNumber(arrCheckRule.GetAt(i)))
			{
				return FALSE;				
			}
			else if (!DEQUAL(_wtof(arrCheckRule.GetAt(i)), 0.0) && !IsPoistive(arrCheckRule.GetAt(i)))
			{
				return FALSE;				
			}
			else if (_wtof(arrCheckRule.GetAt(i)) > 255.0)
			{
				return FALSE;				
			}
		}
		dRed = _wtof(arrCheckRule.GetAt(0));
		dGreen = _wtof(arrCheckRule.GetAt(1));
		dBlue = _wtof(arrCheckRule.GetAt(2));
	}
	else
		return FALSE;

	ProColor color;
	color.value.map.red = dRed/255;
	color.value.map.green = dGreen/255;
	color.value.map.blue = dBlue/255;
	color.method = PRO_COLOR_METHOD_RGB;

	ProModelitem item;
	BOOL bSetError = FALSE;
	for (int i=0, nType=-1; i <checkData.checkResult.arrErrorItems.GetCount(); i++)
	{
		ProTextStyle pTextStyle;
		item.id = checkData.checkResult.arrErrorItems[i].nID;
		item.owner = checkData.checkResult.arrErrorItems[i].pOwner;
		nType = checkData.checkResult.arrErrorItems[i].nType;

		if (PRO_NOTE == nType)	// 注解
		{
			item.type = PRO_NOTE;
			ProNoteTextStyleGet(&item, &pTextStyle);
			ProTextStyleColorSet(pTextStyle, &color);
			if (ProNoteTextStyleSet(&item, pTextStyle) != PRO_TK_NO_ERROR)
				bSetError = TRUE;
		}
		else if (PRO_DIMENSION == nType)	// 尺寸
		{
			item.type = PRO_DIMENSION;
			ProDimensionTextstyleGet(&item, &pTextStyle);
			ProTextStyleColorSet(pTextStyle, &color);
			if (ProDimensionTextstyleSet(&item, pTextStyle) != PRO_TK_NO_ERROR)
				bSetError = TRUE;
			ProDimensionDisplayUpdate(&item);
		}
		else if (PRO_REF_DIMENSION == nType)	// 参考尺寸
		{
			item.type = PRO_REF_DIMENSION;
			ProDimensionTextstyleGet(&item, &pTextStyle);
			ProTextStyleColorSet(pTextStyle, &color);
			if (ProDimensionTextstyleSet(&item, pTextStyle) != PRO_TK_NO_ERROR)
				bSetError = TRUE;
			ProDimensionDisplayUpdate(&item);
		}
		else if (PRO_GTOL == nType)		// 几何公差
		{
			item.type = PRO_GTOL;
			ProGtolTextstyleGet(&item, &pTextStyle);
			ProTextStyleColorSet(pTextStyle, &color);
			if (ProGtolTextstyleSet(&item, pTextStyle) != PRO_TK_NO_ERROR)
				bSetError = TRUE;
			ProAnnotationDisplay(&item, NULL, NULL, NULL);
		}
		else if (PRO_SYMBOL_INSTANCE == nType)	// 符号
		{
			item.type = PRO_SYMBOL_INSTANCE;
			ProDtlsyminstdata pdtldata = NULL;
			ProDtlsyminstDataGet(&item, PRODISPMODE_NUMERIC, &pdtldata);
			ProDtlsyminstdataColorSet(pdtldata, &color);
			if (ProDtlsyminstModify(&item, pdtldata) != PRO_TK_NO_ERROR)
				bSetError = TRUE;
			ProAnnotationDisplay(&item, NULL, NULL, NULL);
		}
		else if (PRO_SURF_FIN == nType)	// 表面光洁度
		{
			item.type = PRO_SURF_FIN;
			ProDtlsyminstdata pdtldata = NULL;
			ProSurffinishDataGet(&item, PRODISPMODE_NUMERIC, &pdtldata);
			ProDtlsyminstdataColorSet(pdtldata, &color);
			if (ProSurffinishModify(&item, pdtldata) != PRO_TK_NO_ERROR)
				bSetError = TRUE;
			ProAnnotationDisplay(&item, NULL, NULL, NULL);
		}
		else if (PRO_SET_DATUM_TAG == nType)	// 基准标签
		{
			item.type = PRO_SET_DATUM_TAG;
			ProSetdatumtagTextstyleGet(&item, &pTextStyle);
			ProTextStyleColorSet(pTextStyle, &color);
			if (ProSetdatumtagTextstyleSet(&item, pTextStyle) != PRO_TK_NO_ERROR)
				bSetError = TRUE;
			ProAnnotationDisplay(&item, NULL, NULL, NULL);
		}

		ProTextStyleFree(&pTextStyle);
	}

	ProWindowRepaint(PRO_VALUE_UNUSED);

	if (bSetError)
		return FALSE;

	return TRUE;
}