I have problem to to apply/create item from master page and how to refer the previos page text frame to create page text
InterfacePtr<IPageSetupPrefs> iPageSetupPrefs(static_cast<IPageSetupPrefs *>(::QueryPreferences(IID_IPAGEPREFERENCES, docRef)));
if (iPageSetupPrefs == nil){
ASSERT(iPageSetupPrefs);
break;
}
InterfacePtr<ICommand> iNewPageCmd(CmdUtils::CreateCommand(kNewPageCmdBoss));
if (iNewPageCmd == nil){
ASSERT(iNewPageCmd);
break;
}
InterfacePtr<IApplyMasterCmdData> iApplyMasterCmdData( iNewPageCmd, IID_IAPPLYMASTERCMDDATA );
if (iApplyMasterCmdData == nil){
ASSERT(iPageCmdData);
break;
}
InterfacePtr<IPageCmdData> iPageCmdData(iNewPageCmd,UseDefaultIID());
if (iPageCmdData == nil){
ASSERT(iPageCmdData);
break;
}
int32 numPagesToInsert = 1;
PMRect pageSizeRect = iPageSetupPrefs->GetPageSizePref();
int32 pos = iPageCmdData->GetNewPageInsertPosition();
InterfacePtr<IGeometry> iSpreadGeometry(spreadList->QueryNthSpread(0));
if (iSpreadGeometry == nil){
ASSERT(iSpreadGeometry);
break;
}
spreadUIDRef = ::GetUIDRef(iSpreadGeometry);
PMRect dfltPMRectPageSize = iPageSetupPrefs->GetPageSizePref();
PMReal pageWidth = dfltPMRectPageSize.Right() - dfltPMRectPageSize.Left();
PMReal pageHeight = dfltPMRectPageSize.Bottom () - dfltPMRectPageSize.Top ();
PMRect usrDefPMRectPageSize(0, 0, pageWidth, pageHeight);
K2Vector< PMRect> pageBoundingBoxes;
for( int32 i = 0; i < numPagesToInsert; ++i){
pageBoundingBoxes.push_back( usrDefPMRectPageSize);
}
iPageCmdData->SetNewPageCmdData( spreadUIDRef, numPagesToInsert, pos+1, &pageBoundingBoxes, nil);
//CreateSpreadFromSpread(docRef,spreadUIDRef);
InterfacePtr<IBoolData> iBoolData(iNewPageCmd,UseDefaultIID());
if (iBoolData == nil){
ASSERT(iBoolData);
break;
}
bool16 allowShuffle;
if (this->GetShufflePref(allowShuffle,docRef)==kFailure){
break;
}
iBoolData->Set(allowShuffle);
CmdUtils::ProcessCommand(iNewPageCmd);
Above code, able to create a page but problem in apply master page?