本文整理汇总了C++中QSharedPointer::UpdateViewSection方法的典型用法代码示例。如果您正苦于以下问题:C++ QSharedPointer::UpdateViewSection方法的具体用法?C++ QSharedPointer::UpdateViewSection怎么用?C++ QSharedPointer::UpdateViewSection使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QSharedPointer
的用法示例。
在下文中一共展示了QSharedPointer::UpdateViewSection方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: DoExecute
void GISDisplaySegmentMsgCommand::DoExecute() throw (GException)
{
LOG_LEVEL3("DoExecute()");
GISAbsData* pGISAbsData = GetData();
QSharedPointer<GISModel> pModel = GISModelSingleton::GetInstance()->GetModel();
{
QMutexLocker mtxScope(pModel->GetMutex());
GDisplay* poDisplay = pModel->GetDisplay(pGISAbsData->GetDisplay());
GScreen* poScreen = poDisplay->GetScreen(pGISAbsData->GetScreen());
GSegment* poSegment = poScreen->GetSegment(pGISAbsData->GetSegment());
//Erase the content of the if and else branches. Leave the empty if commented.
//Whichever value the attribute has, make a gsegment clon and do what is done to the poSegment in if branch, to the clon
// if (pGISAbsData->GetAttr()==GAttributeEnum::eNotErasePreviousLocation)
// {// If Attr is not zero call old setters and getters
// }
// else// GetAttr is eErasePreviousLocation otherwise ( all other options where discarded in Validate of MsgData ).
// {
// }
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// GSegment *poClonedSegment = GSegment::Clone(poSegment);
//
// if (pGISAbsData->GetXpos())
// poClonedSegment->SetXPos(pGISAbsData->GetXpos());
//
// if (pGISAbsData->GetYpos())
// poClonedSegment->SetYPos(pGISAbsData->GetYpos());
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Java implements this command in the following way, the Spec seems to prefer the one commented above.
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
if (pGISAbsData->GetXpos())
{
poSegment->SetXPos(pGISAbsData->GetXpos());
}
if (pGISAbsData->GetYpos())
{
poSegment->SetYPos(pGISAbsData->GetYpos());
}
GSegment *poClonedSegment = GSegment::Clone(poSegment);
if (poClonedSegment)
{
poClonedSegment->SetVisible(true);
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Call Update section (instead of updateview) with a pointer to the clon (without validation)
pModel->UpdateViewSection(poClonedSegment,pGISAbsData->GetSynchronousRequest());
}
}