12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- #ifndef SAVETOTEMPLATE_H
- #define SAVETOTEMPLATE_H
- #include <QDialog>
- #include <qchar.h>
- #include <QMap>
- #include <QColor>
- #include "TransmitterSwitchInfo.h"
- class OneShadow;
- namespace Ui {
- class SaveToTemplate;
- }
- /**
- * @brief 注意,这里的QLineEdit占位符是用paintEvent实现的
- *
- */
- class SaveToTemplate : public QDialog
- {
- Q_OBJECT
- public:
- explicit SaveToTemplate(QWidget *parent = nullptr);
- ~SaveToTemplate();
- /* 传入计划项是否为空 */
- void setItemEmpty(bool flag);
- /* 传入所有的模板名称 */
- void setTemplateList(QList<OneTemplateInfo>& list);
- /* 获取是否点击了确定 */
- bool isOk() { return m_isOk; }
- /* 获取模板名称 */
- QString getTemplateName();
- /* 设置QSS */
- void setQSS(QString qssPath);
- signals:
- void signal_templateName(QString name);
- private slots:
- void do_ok();
- private:
- void setWarning(bool flag); /* 设置报警 */
- protected:
- /* 绘画事件 */
- // void paintEvent(QPaintEvent *event) override;
- /* 事件过滤器 */
- bool eventFilter(QObject *watched, QEvent *event) override;
- /* 鼠标点击事件 */
- void mousePressEvent(QMouseEvent *event) override;
- /* 鼠标移动事件 */
- void mouseMoveEvent(QMouseEvent *event) override;
- /* 鼠标释放事件 */
- void mouseReleaseEvent(QMouseEvent *event) override;
- private:
- Ui::SaveToTemplate *ui;
- bool m_itemEmpty; /* 计划项是否为空 */
- int m_weekDay; /* 周几 */
- QList<OneTemplateInfo> m_list;
- bool m_isInputing = false; /* 是否正在输入 */
- QString m_placeHolder; /* 占位符 */
- QColor m_placeHolderColor; /* 占位符颜色 */
- bool m_isOk = false; /* 是否点击了确定 */
- QString m_templateName; /* 模板名称 */
- QPoint m_lastPos; /* 鼠标点击的位置 */
- };
- #endif // SAVETOTEMPLATE_H
|