File indexing completed on 2024-05-12 05:36:58
0001 /* 0002 * SPDX-FileCopyrightText: 2023 Oliver Beard <olib141@outlook.com> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0005 */ 0006 0007 #include "applicationInfo.h" 0008 0009 #include <KService> 0010 #include <QString> 0011 0012 void ApplicationInfo::setDesktopName(const QString &desktopName) 0013 { 0014 if (m_desktopName == desktopName) { 0015 return; 0016 } 0017 0018 m_desktopName = desktopName; 0019 Q_EMIT desktopNameChanged(); 0020 0021 const KService::Ptr service = KService::serviceByDesktopName(m_desktopName); 0022 0023 const bool exists = (service != nullptr); 0024 if (m_exists != exists) { 0025 m_exists = exists; 0026 Q_EMIT existsChanged(); 0027 } 0028 0029 if (!exists) { 0030 return; 0031 } 0032 0033 const QString name = service->name(); 0034 if (m_name != name) { 0035 m_name = name; 0036 Q_EMIT nameChanged(); 0037 } 0038 0039 const QString icon = service->icon(); 0040 if (m_icon != icon) { 0041 m_icon = icon; 0042 Q_EMIT iconChanged(); 0043 } 0044 } 0045 0046 #include "moc_applicationInfo.cpp"