Properly track modification status due to changes in merge or merge source.

This commit is contained in:
Jim Evins
2016-05-15 14:26:03 -04:00
parent 003641b8f2
commit a30af8eeab
3 changed files with 66 additions and 64 deletions
+4
View File
@@ -130,6 +130,8 @@ bool File::save( MainWindow *window )
}
XmlLabelCreator::writeFile( window->model(), window->model()->fileName() );
window->model()->clearModified();
return true;
}
@@ -170,6 +172,8 @@ bool File::saveAs( MainWindow *window )
XmlLabelCreator::writeFile( window->model(), fileName );
window->model()->setFileName( fileName );
window->model()->clearModified();
return true;
}
+60 -64
View File
@@ -183,7 +183,9 @@ void LabelModel::setTmplate( const glabels::Template* tmplate )
{
mTmplate = tmplate;
mFrame = tmplate->frames().first();
mModified = true;
setModified();
emit changed();
emit sizeChanged();
@@ -209,7 +211,9 @@ void LabelModel::setRotate( bool rotate )
if (mRotate != rotate)
{
mRotate = rotate;
mModified = true;
setModified();
emit changed();
emit sizeChanged();
}
@@ -288,11 +292,25 @@ void LabelModel::setMerge( Merge* merge )
delete mMerge;
mMerge = merge;
connect( mMerge, SIGNAL(sourceChanged()), this, SLOT(onMergeSourceChanged()) );
setModified();
emit mergeChanged();
}
}
///
/// Set modified status
///
void LabelModel::setModified()
{
mModified = true;
emit modifiedChanged();
}
///
/// Clear modified status
///
@@ -314,10 +332,9 @@ void LabelModel::addObject( LabelModelObject* object )
connect( object, SIGNAL(changed()), this, SLOT(onObjectChanged()) );
connect( object, SIGNAL(moved()), this, SLOT(onObjectMoved()) );
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -331,10 +348,9 @@ void LabelModel::deleteObject( LabelModelObject* object )
disconnect( object, 0, this, 0 );
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
delete object;
}
@@ -388,10 +404,8 @@ Handle* LabelModel::handleAt( double scale,
///
void LabelModel::onObjectChanged()
{
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -400,10 +414,18 @@ void LabelModel::onObjectChanged()
///
void LabelModel::onObjectMoved()
{
mModified = true;
setModified();
emit changed();
}
///
/// Merge Source Changed Slot
///
void LabelModel::onMergeSourceChanged()
{
setModified();
emit changed();
emit modifiedChanged();
}
@@ -641,11 +663,10 @@ void LabelModel::deleteSelection()
deleteObject( object );
}
mModified = true;
setModified();
emit changed();
emit selectionChanged();
emit modifiedChanged();
}
@@ -667,10 +688,9 @@ void LabelModel::raiseSelectionToTop()
mObjectList.push_back( object );
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -692,10 +712,9 @@ void LabelModel::lowerSelectionToBottom()
mObjectList.push_front( object );
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -712,10 +731,9 @@ void LabelModel::rotateSelection( double thetaDegs )
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -750,10 +768,9 @@ void LabelModel::flipSelectionHoriz()
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -770,10 +787,9 @@ void LabelModel::flipSelectionVert()
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -805,10 +821,9 @@ void LabelModel::alignSelectionLeft()
object->setPositionRelative( dx, 0 );
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -840,10 +855,9 @@ void LabelModel::alignSelectionRight()
object->setPositionRelative( dx, 0 );
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -892,10 +906,9 @@ void LabelModel::alignSelectionHCenter()
object->setPositionRelative( dx, 0 );
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -927,10 +940,9 @@ void LabelModel::alignSelectionTop()
object->setPositionRelative( 0, dy );
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -962,10 +974,9 @@ void LabelModel::alignSelectionBottom()
object->setPositionRelative( 0, dy );
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -1014,10 +1025,9 @@ void LabelModel::alignSelectionVCenter()
object->setPositionRelative( 0, dy );
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -1039,10 +1049,9 @@ void LabelModel::centerSelectionHoriz()
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -1064,10 +1073,9 @@ void LabelModel::centerSelectionVert()
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -1084,10 +1092,9 @@ void LabelModel::moveSelection( const glabels::Distance& dx, const glabels::Dist
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -1104,10 +1111,9 @@ void LabelModel::setSelectionFontFamily( const QString &fontFamily )
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -1124,10 +1130,9 @@ void LabelModel::setSelectionFontSize( double fontSize )
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -1144,10 +1149,9 @@ void LabelModel::setSelectionFontWeight( QFont::Weight fontWeight )
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -1164,10 +1168,9 @@ void LabelModel::setSelectionFontItalicFlag( bool fontItalicFlag )
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -1184,10 +1187,9 @@ void LabelModel::setSelectionTextHAlign( Qt::Alignment textHAlign )
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -1204,10 +1206,9 @@ void LabelModel::setSelectionTextVAlign( Qt::Alignment textVAlign )
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -1224,10 +1225,9 @@ void LabelModel::setSelectionTextLineSpacing( double textLineSpacing )
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -1244,10 +1244,9 @@ void LabelModel::setSelectionTextColorNode( ColorNode textColorNode )
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -1264,10 +1263,9 @@ void LabelModel::setSelectionLineWidth( const glabels::Distance& lineWidth )
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -1284,10 +1282,9 @@ void LabelModel::setSelectionLineColorNode( ColorNode lineColorNode )
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
@@ -1304,10 +1301,9 @@ void LabelModel::setSelectionFillColorNode( ColorNode fillColorNode )
}
}
mModified = true;
setModified();
emit changed();
emit modifiedChanged();
}
+2
View File
@@ -80,6 +80,7 @@ signals:
/////////////////////////////////
public:
bool isModified() const;
void setModified();
void clearModified();
QString shortName();
@@ -207,6 +208,7 @@ public:
private slots:
void onObjectChanged();
void onObjectMoved();
void onMergeSourceChanged();
/////////////////////////////////