Merge pull request #26117 from notspiff/infoscanner_inforet_enum_class
[xbmc.git] / xbmc / addons / settings / SettingUrlEncodedString.h
blob80bad4da364b2dfe136cf73191d952c7dd436399
1 /*
2 * Copyright (C) 2017-2018 Team Kodi
3 * This file is part of Kodi - https://kodi.tv
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 * See LICENSES/README.md for more information.
7 */
9 #pragma once
11 #include "settings/lib/Setting.h"
13 class CSettingsManager;
15 namespace ADDON
17 class CSettingUrlEncodedString : public CSettingString
19 public:
20 CSettingUrlEncodedString(const std::string& id, CSettingsManager* settingsManager = nullptr);
21 CSettingUrlEncodedString(const std::string& id,
22 int label,
23 const std::string& value,
24 CSettingsManager* settingsManager = nullptr);
25 CSettingUrlEncodedString(const std::string &id, const CSettingUrlEncodedString &setting);
26 ~CSettingUrlEncodedString() override = default;
28 SettingPtr Clone(const std::string &id) const override { return std::make_shared<CSettingUrlEncodedString>(id, *this); }
30 std::string GetDecodedValue() const;
31 bool SetDecodedValue(const std::string& decodedValue);