Make lockAspectRatio (sizeAspectCheck) per-object (#63)

* Make lockAspectRatio (sizeAspectCheck) per-object
* Added unit tests for XmlLabelCreator and XmlLabelParser.
This commit is contained in:
gitlost
2019-07-14 03:18:30 +01:00
committed by Jim Evins
parent 00970d8673
commit 850c62ddd0
25 changed files with 329 additions and 54 deletions
+4
View File
@@ -469,6 +469,10 @@ namespace glabels
mResizeObject = handle->owner();
mResizeHandle = handle;
mResizeHonorAspect = event->modifiers() & Qt::ControlModifier;
if ( mResizeObject->lockAspectRatio() )
{
mResizeHonorAspect = !mResizeHonorAspect;
}
mState = ArrowResize;
}
+3
View File
@@ -188,6 +188,7 @@ namespace glabels
sizeWSpin->setValue( mObject->w().inUnits(mUnits) );
sizeHSpin->setValue( mObject->h().inUnits(mUnits) );
sizeAspectCheck->setChecked( mObject->lockAspectRatio() );
model::Size originalSize = mObject->naturalSize();
QString originalSizeString = QString( "%1: %2 x %3 %4" )
@@ -655,6 +656,7 @@ namespace glabels
if ( sizeAspectCheck->isChecked() )
{
mObject->setLockAspectRatio( true );
if ( fabs(spinW - mObject->w()) > fabs(spinH - mObject->h()) )
{
mObject->setWHonorAspect( spinW );
@@ -668,6 +670,7 @@ namespace glabels
}
else
{
mObject->setLockAspectRatio( false );
mObject->setSize( spinW, spinH );
}
+17 -10
View File
@@ -1202,16 +1202,7 @@
<property name="spacing">
<number>15</number>
</property>
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<property name="margin">
<number>0</number>
</property>
<item>
@@ -2190,6 +2181,22 @@
</hint>
</hints>
</connection>
<connection>
<sender>sizeAspectCheck</sender>
<signal>toggled(bool)</signal>
<receiver>ObjectEditor</receiver>
<slot>onRectSizeControlsChanged()</slot>
<hints>
<hint type="sourcelabel">
<x>231</x>
<y>289</y>
</hint>
<hint type="destinationlabel">
<x>199</x>
<y>319</y>
</hint>
</hints>
</connection>
</connections>
<slots>
<slot>onChanged()</slot>