File indexing completed on 2024-05-12 15:58:47

0001 /*
0002  *  SPDX-FileCopyrightText: 2013 Dmitry Kazakov <dimula73@gmail.com>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 
0007 #include "kis_update_outline_job.h"
0008 
0009 
0010 KisUpdateOutlineJob::KisUpdateOutlineJob(KisSelectionSP selection, bool updateThumbnail, const QColor &maskColor)
0011     : m_selection(selection),
0012       m_updateThumbnail(updateThumbnail),
0013       m_maskColor(maskColor)
0014 {
0015 }
0016 
0017 bool KisUpdateOutlineJob::overrides(const KisSpontaneousJob *otherJob)
0018 {
0019     return dynamic_cast<const KisUpdateOutlineJob*>(otherJob);
0020 }
0021 
0022 void KisUpdateOutlineJob::run()
0023 {
0024     m_selection->recalculateOutlineCache();
0025     if (m_updateThumbnail) {
0026         m_selection->recalculateThumbnailImage(m_maskColor);
0027     }
0028     m_selection->notifySelectionChanged();
0029 }
0030 
0031 int KisUpdateOutlineJob::levelOfDetail() const
0032 {
0033     return 0;
0034 }
0035 
0036 QString KisUpdateOutlineJob::debugName() const
0037 {
0038     return "KisUpdateOutlineJob";
0039 }