File indexing completed on 2024-12-22 05:17:15
0001 /* 0002 * This file is part of the KDE wacomtablet project. For copyright 0003 * information and license terms see the AUTHORS and COPYING files 0004 * in the top-level directory of this distribution. 0005 * 0006 * This program is free software; you can redistribute it and/or 0007 * modify it under the terms of the GNU General Public License as 0008 * published by the Free Software Foundation; either version 2 of 0009 * the License, or (at your option) any later version. 0010 * 0011 * This program is distributed in the hope that it will be useful, 0012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 0013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0014 * GNU General Public License for more details. 0015 * 0016 * You should have received a copy of the GNU General Public License 0017 * along with this program. If not, see <http://www.gnu.org/licenses/>. 0018 */ 0019 0020 #pragma once 0021 0022 #include <QString> 0023 0024 #include "deviceprofile.h" 0025 0026 namespace Wacom 0027 { 0028 class ProfileManagementInterface 0029 { 0030 public: 0031 virtual void setTabletId(const QString &tabletId) = 0; 0032 virtual void createNewProfile(const QString &profilename) = 0; 0033 virtual const QStringList availableProfiles() = 0; 0034 virtual void deleteProfile() = 0; 0035 virtual DeviceProfile loadDeviceProfile(const DeviceType &device) = 0; 0036 virtual bool saveDeviceProfile(const DeviceProfile &profile) = 0; 0037 virtual void setProfileName(const QString &name) = 0; 0038 virtual QString profileName() const = 0; 0039 virtual void reload() = 0; 0040 0041 virtual ~ProfileManagementInterface() = default; 0042 }; 0043 }