// Copyright (C) 2020 ~ 2022 Deepin Technology Co., Ltd. // SPDX-FileCopyrightText: 2018 - 2023 UnionTech Software Technology Co., Ltd. // // SPDX-License-Identifier: LGPL-3.0-or-later #ifndef AIRPLANEMODEPLUGIN_H #define AIRPLANEMODEPLUGIN_H #include "pluginsiteminterface.h" class AirplaneModeItem; class AirplaneModePlugin : public QObject, PluginsItemInterface { Q_OBJECT Q_INTERFACES(PluginsItemInterface) Q_PLUGIN_METADATA(IID "com.deepin.dock.PluginsItemInterface" FILE "airplanemode.json") public: explicit AirplaneModePlugin(QObject *parent = nullptr); const QString pluginName() const Q_DECL_OVERRIDE; const QString pluginDisplayName() const Q_DECL_OVERRIDE; void init(PluginProxyInterface *proxyInter) Q_DECL_OVERRIDE; void pluginStateSwitched() Q_DECL_OVERRIDE; bool pluginIsAllowDisable() Q_DECL_OVERRIDE { return true; } QWidget *itemWidget(const QString &itemKey) Q_DECL_OVERRIDE; QWidget *itemTipsWidget(const QString &itemKey) Q_DECL_OVERRIDE; int itemSortKey(const QString &itemKey) Q_DECL_OVERRIDE; void setSortKey(const QString &itemKey, const int order) Q_DECL_OVERRIDE; void refreshIcon(const QString &itemKey) Q_DECL_OVERRIDE; public slots: void refreshAirplaneEnableState(); void onAirplaneEnableChanged(bool enable); private: AirplaneModeItem *m_item; }; #endif // AIRPLANEMODEPLUGIN_H