Kaydet (Commit) b6ddd700 authored tarafından Kohei Yoshida's avatar Kohei Yoshida

Reduce scope level.

üst 518c1fd9
...@@ -1838,56 +1838,58 @@ IMPL_LINK( ScDPLayoutDlg, OkHdl, OKButton *, EMPTYARG ) ...@@ -1838,56 +1838,58 @@ IMPL_LINK( ScDPLayoutDlg, OkHdl, OKButton *, EMPTYARG )
for( ScDPLabelDataVec::const_iterator aIt = aLabelDataArr.begin(), aEnd = aLabelDataArr.end(); aIt != aEnd; ++aIt ) for( ScDPLabelDataVec::const_iterator aIt = aLabelDataArr.begin(), aEnd = aLabelDataArr.end(); aIt != aEnd; ++aIt )
{ {
if( ScDPSaveDimension* pDim = aSaveData.GetExistingDimensionByName( aIt->maName ) ) ScDPSaveDimension* pDim = aSaveData.GetExistingDimensionByName(aIt->maName);
if (!pDim)
continue;
pDim->SetUsedHierarchy( aIt->mnUsedHier );
pDim->SetShowEmpty( aIt->mbShowAll );
pDim->SetSortInfo( &aIt->maSortInfo );
pDim->SetLayoutInfo( &aIt->maLayoutInfo );
pDim->SetAutoShowInfo( &aIt->maShowInfo );
ScDPSaveDimension* pOldDim = NULL;
if (pOldSaveData)
{ {
pDim->SetUsedHierarchy( aIt->mnUsedHier ); // Transfer the existing layout names to new dimension instance.
pDim->SetShowEmpty( aIt->mbShowAll ); pOldDim = pOldSaveData->GetExistingDimensionByName(aIt->maName);
pDim->SetSortInfo( &aIt->maSortInfo ); if (pOldDim)
pDim->SetLayoutInfo( &aIt->maLayoutInfo );
pDim->SetAutoShowInfo( &aIt->maShowInfo );
ScDPSaveDimension* pOldDim = NULL;
if (pOldSaveData)
{ {
// Transfer the existing layout names to new dimension instance. const OUString* pLayoutName = pOldDim->GetLayoutName();
pOldDim = pOldSaveData->GetExistingDimensionByName(aIt->maName); if (pLayoutName)
if (pOldDim) pDim->SetLayoutName(*pLayoutName);
{
const OUString* pLayoutName = pOldDim->GetLayoutName();
if (pLayoutName)
pDim->SetLayoutName(*pLayoutName);
const OUString* pSubtotalName = pOldDim->GetSubtotalName(); const OUString* pSubtotalName = pOldDim->GetSubtotalName();
if (pSubtotalName) if (pSubtotalName)
pDim->SetSubtotalName(*pSubtotalName); pDim->SetSubtotalName(*pSubtotalName);
}
} }
}
bool bManualSort = ( aIt->maSortInfo.Mode == sheet::DataPilotFieldSortMode::MANUAL );
bool bManualSort = ( aIt->maSortInfo.Mode == sheet::DataPilotFieldSortMode::MANUAL ); // visibility of members
for (vector<ScDPLabelData::Member>::const_iterator itr = aIt->maMembers.begin(), itrEnd = aIt->maMembers.end();
itr != itrEnd; ++itr)
{
ScDPSaveMember* pMember = pDim->GetMemberByName(itr->maName);
// visibility of members // #i40054# create/access members only if flags are not default
for (vector<ScDPLabelData::Member>::const_iterator itr = aIt->maMembers.begin(), itrEnd = aIt->maMembers.end(); // (or in manual sorting mode - to keep the order)
itr != itrEnd; ++itr) if (bManualSort || !itr->mbVisible || !itr->mbShowDetails)
{ {
ScDPSaveMember* pMember = pDim->GetMemberByName(itr->maName); pMember->SetIsVisible(itr->mbVisible);
pMember->SetShowDetails(itr->mbShowDetails);
}
// #i40054# create/access members only if flags are not default if (!pOldDim)
// (or in manual sorting mode - to keep the order) continue;
if (bManualSort || !itr->mbVisible || !itr->mbShowDetails)
{ // Transfer the existing layout name.
pMember->SetIsVisible(itr->mbVisible); ScDPSaveMember* pOldMember = pOldDim->GetMemberByName(itr->maName);
pMember->SetShowDetails(itr->mbShowDetails); if (pOldMember)
} {
if (pOldDim) const OUString* pLayoutName = pOldMember->GetLayoutName();
{ if (pLayoutName)
// Transfer the existing layout name. pMember->SetLayoutName(*pLayoutName);
ScDPSaveMember* pOldMember = pOldDim->GetMemberByName(itr->maName);
if (pOldMember)
{
const OUString* pLayoutName = pOldMember->GetLayoutName();
if (pLayoutName)
pMember->SetLayoutName(*pLayoutName);
}
}
} }
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment