void InspectorVBox::setElement(Element* e) { VBox* box = static_cast<VBox*>(e); qreal _spatium = e->score()->spatium(); vb.elementName->setText(e->name()); vb.topGap->blockSignals(true); vb.bottomGap->blockSignals(true); vb.height->blockSignals(true); vb.topGap->setValue(box->topGap() / _spatium); vb.bottomGap->setValue(box->bottomGap() / _spatium); vb.height->setValue(box->boxHeight().val()); vb.topGap->blockSignals(false); vb.bottomGap->blockSignals(false); vb.height->blockSignals(false); }
void InspectorVBox::apply() { VBox* box = static_cast<VBox*>(inspector->element()); Score* score = box->score(); qreal _spatium = score->spatium(); qreal topGap = vb.topGap->value() * _spatium; qreal bottomGap = vb.bottomGap->value() * _spatium; Spatium height(vb.height->value()); if (topGap != box->topGap() || bottomGap != box->bottomGap() || height != box->boxHeight()) { score->startCmd(); score->undo(new ChangeBoxProperties(box, box->leftMargin(), box->topMargin(), box->rightMargin(), box->bottomMargin(), height, box->boxWidth(), topGap, bottomGap )); score->setLayoutAll(true); score->endCmd(); mscore->endCmd(); } }