void PageView::onSizeChanged() { Layout::onSizeChanged(); _rightBoundary = getSize().width; updateChildrenSize(); updateChildrenPosition(); }
bool Ver4PatriciaTrieNodeWriter::updateAllPositionFields( const PtNodeParams *const toBeUpdatedPtNodeParams, const DictPositionRelocationMap *const dictPositionRelocationMap, int *const outBigramEntryCount) { int parentPos = toBeUpdatedPtNodeParams->getParentPos(); if (parentPos != NOT_A_DICT_POS) { PtNodeWriter::PtNodePositionRelocationMap::const_iterator it = dictPositionRelocationMap->mPtNodePositionRelocationMap.find(parentPos); if (it != dictPositionRelocationMap->mPtNodePositionRelocationMap.end()) { parentPos = it->second; } } int writingPos = toBeUpdatedPtNodeParams->getHeadPos() + DynamicPtWritingUtils::NODE_FLAG_FIELD_SIZE; // Write updated parent offset. if (!DynamicPtWritingUtils::writeParentPosOffsetAndAdvancePosition(mTrieBuffer, parentPos, toBeUpdatedPtNodeParams->getHeadPos(), &writingPos)) { return false; } // Updates children position. int childrenPos = toBeUpdatedPtNodeParams->getChildrenPos(); if (childrenPos != NOT_A_DICT_POS) { PtNodeWriter::PtNodeArrayPositionRelocationMap::const_iterator it = dictPositionRelocationMap->mPtNodeArrayPositionRelocationMap.find(childrenPos); if (it != dictPositionRelocationMap->mPtNodeArrayPositionRelocationMap.end()) { childrenPos = it->second; } } if (!updateChildrenPosition(toBeUpdatedPtNodeParams, childrenPos)) { return false; } return true; }
void PageView::removePage(Layout* page) { if (!page) { return; } removeChild(page); updateChildrenPosition(); updateBoundaryPages(); }