Add ObjectsCenter action to center objects in label both h and v. (#184)

This commit is contained in:
Jaye Evins
2025-07-31 18:01:22 -04:00
committed by GitHub
parent 475971b701
commit 9c3e21faf3
8 changed files with 108 additions and 0 deletions
+27
View File
@@ -1163,6 +1163,33 @@ namespace glabels
}
///
/// Align Selected Objects To Center Of Label Both Horizontally and Vertically
///
void Model::centerSelection()
{
Distance xLabelCenter = w() / 2.0;
Distance yLabelCenter = h() / 2.0;
foreach ( ModelObject* object, mObjectList )
{
if ( object->isSelected() )
{
Region r = object->getExtent();
Distance xObjectCenter = (r.x1() + r.x2()) / 2.0;
Distance yObjectCenter = (r.y1() + r.y2()) / 2.0;
Distance dx = xLabelCenter - xObjectCenter;
Distance dy = yLabelCenter - yObjectCenter;
object->setPositionRelative( dx, dy );
}
}
setModified();
emit changed();
}
///
/// Align Selected Objects To Center Of Label Vertically
///