fix pegbar lost on exploding subxsheet

This commit is contained in:
shun-iwasawa 2020-06-10 03:04:35 +09:00
parent 19ef16ec66
commit faa4917b54

View file

@ -538,6 +538,11 @@ void bringObjectOut(TStageObject *obj, TXsheet *xsh,
assert(id.isPegbar());
pegbarIndex++;
TStageObjectId outerId = TStageObjectId::PegbarId(pegbarIndex);
// find the first available pegbar id
while (xsh->getStageObjectTree()->getStageObject(outerId, false)) {
pegbarIndex++;
outerId = TStageObjectId::PegbarId(pegbarIndex);
}
TStageObject *outerObj =
xsh->getStageObjectTree()->getStageObject(outerId, true);
outerObj->setDagNodePos((*it)->getDagNodePos());
@ -600,8 +605,8 @@ set<int> explodeStageObjects(
if (!onlyColumn) {
// add a pegbar to represent the table
TStageObject *table = subXsh->getStageObject(TStageObjectId::TableId);
/*- 空いてるIndexまでpegbarIndexを進める -*/
int pegbarIndex = 2;
// find the first available pegbar index
int pegbarIndex = 0;
while (
outerTree->getStageObject(TStageObjectId::PegbarId(pegbarIndex), false))
pegbarIndex++;