Fix copy and paste crash of Elements with Sequential Autonum

git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@4593 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
dfochi
2016-07-26 20:40:54 +00:00
parent d6f1381631
commit 4814ac812d
2 changed files with 10 additions and 6 deletions

View File

@@ -856,22 +856,24 @@ void Element::setFolioSequentialToHash(QStringList* list, QHash<QString, QString
*/
QString Element::assignSeq(QString label) {
for (int i = 1; i <= qMax(qMax(qMax(seq_unitfolio.size(), seq_tenfolio.size()),qMax(seq_hundredfolio.size(),seq_unit.size())),qMax(seq_hundred.size(),seq_ten.size())); i++) {
if (label.contains("%sequ_" + QString::number(i))) {
// "&& !seq.isEmpty()" introduced in the methods below to avoid crash when copying and paste elements
// that contain folio sequential in their labels. Needs further debugging.
if (label.contains("%sequ_" + QString::number(i)) && !seq_unit.isEmpty()) {
label.replace("%sequ_" + QString::number(i),seq_unit.at(i-1));
}
if (label.contains("%seqt_" + QString::number(i))) {
if (label.contains("%seqt_" + QString::number(i)) && !seq_ten.isEmpty()) {
label.replace("%seqt_" + QString::number(i),seq_ten.at(i-1));
}
if (label.contains("%seqh_" + QString::number(i))) {
if (label.contains("%seqh_" + QString::number(i)) && !seq_hundred.isEmpty()) {
label.replace("%seqh_" + QString::number(i),seq_hundred.at(i-1));
}
if (label.contains("%sequf_" + QString::number(i))) {
if (label.contains("%sequf_" + QString::number(i)) && !seq_unitfolio.isEmpty()) {
label.replace("%sequf_" + QString::number(i),seq_unitfolio.at(i-1));
}
if (label.contains("%seqtf_" + QString::number(i))) {
if (label.contains("%seqtf_" + QString::number(i)) && !seq_tenfolio.isEmpty()) {
label.replace("%seqtf_" + QString::number(i),seq_tenfolio.at(i-1));
}
if (label.contains("%seqhf_" + QString::number(i))) {
if (label.contains("%seqhf_" + QString::number(i)) && !seq_hundredfolio.isEmpty()) {
label.replace("%seqhf_" + QString::number(i),seq_hundredfolio.at(i-1));
}
}