dde-control-center
Deepin Control Center
载入中...
搜索中...
未找到
moduleobjectitem.h
1//SPDX-FileCopyrightText: 2018 - 2023 UnionTech Software Technology Co., Ltd.
2//
3//SPDX-License-Identifier: GPL-3.0-or-later
4#ifndef MODULEOBJECTITEM_H
5#define MODULEOBJECTITEM_H
6
7#include "interface/moduleobject.h"
8
9#include <DStyle>
10#include <QVariant>
11
12namespace DCC_NAMESPACE {
13class ModuleObjectItemPrivate;
15{
16 Q_OBJECT
17public:
18 explicit ModuleObjectItem(const QString &name, const QString &displayName, QObject *parent = nullptr);
19 ~ModuleObjectItem() override;
20
21 void setRightIcon(DTK_WIDGET_NAMESPACE::DStyle::StandardPixmap st, int index = -1);
22 void setRightIcon(const QString &icon, int index = -1);
23 void setRightIcon(const QIcon &icon, int index = -1);
24 void setRightText(const QString &text, int index = -1);
25 DTK_WIDGET_NAMESPACE::DViewItemAction *getRightItem(int index = -1);
26 void update();
27
28 virtual void setData(int role, const QVariant &value);
29 virtual QVariant data(int role) const;
30 inline DCC_MODULE_TYPE getClassID() const override { return ITEM; }
31
32Q_SIGNALS:
33 void clicked();
34
35 DCC_DECLARE_PRIVATE(ModuleObjectItem)
36};
37}
38#endif // MODULEOBJECTITEM_H
Definition moduleobjectitem.h:15
ModuleObject作为规范每个Module的接口,每个Module必须提供其基本的信息
Definition moduleobject.h:66