#ifndef STATUSLABEL_H
#define STATUSLABEL_H

#include <QLabel>
#include <QObject>

class StatusLabel : public QLabel
{
    Q_OBJECT

    /**
     * @brief StatusLabel 类用于显示状态信息。
     *
     * 该类继承自 QLabel，用于在 GUI 中显示不同的状态信息。通过设置状态值，
     * 可以动态更新标签的显示内容。类的核心功能包括设置状态和更新状态标签的显示。
     *
     * 使用示例：
     *
     * 构造函数参数：
     * - QWidget* parent：指定父窗口部件，默认为 nullptr。
     *
     * 特殊使用限制或潜在的副作用：
     * - 无特殊使用限制或潜在的副作用。
     */
public:
    // 构造函数，初始化状态标签
    StatusLabel(QWidget* parent = nullptr);

    // 设置状态
    void setState(int newState);

private:
    // 设置状态标签
    void setStatus();

private:
    // 状态
    int m_state;
};

#endif // STATUSLABEL_H
