File indexing completed on 2024-04-28 05:27:05

0001 /*
0002  * SPDX-FileCopyrightText: 2020 Mikhail Zolotukhin <zomial@protonmail.com>
0003  *
0004  * SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0005  */
0006 
0007 #include "decorationpainter.h"
0008 
0009 #include <QRect>
0010 #include <QString>
0011 
0012 #include "auroraedecorationpainter.h"
0013 #include "standarddecorationpainter.h"
0014 
0015 const QRect DecorationPainter::ButtonGeometry{0, 0, 50, 50};
0016 
0017 std::unique_ptr<DecorationPainter> DecorationPainter::fromThemeName(const QString &themeName)
0018 {
0019     static const QString auroraeThemePrefix = QStringLiteral("__aurorae__svg__");
0020     if (themeName.startsWith(auroraeThemePrefix)) {
0021         QString prefixlessThemeName = themeName.mid(auroraeThemePrefix.size());
0022         return std::unique_ptr<AuroraeDecorationPainter>{new AuroraeDecorationPainter(prefixlessThemeName)};
0023     } else {
0024         return std::unique_ptr<StandardDecorationPainter>{new StandardDecorationPainter(themeName)};
0025     }
0026 }