File indexing completed on 2024-04-28 05:46:36
0001 /* 0002 SPDX-FileCopyrightText: 2010 Volker Lanz <vl@fidra.de> 0003 SPDX-FileCopyrightText: 2014-2017 Andrius Štikonas <andrius@stikonas.eu> 0004 0005 SPDX-License-Identifier: GPL-3.0-or-later 0006 */ 0007 0008 #if !defined(SMARTDIALOG_H) 0009 0010 #define SMARTDIALOG_H 0011 0012 #include <QDialog> 0013 0014 class Device; 0015 class SmartDialogWidget; 0016 0017 class QWidget; 0018 class QString; 0019 class QPoint; 0020 class QDialogButtonBox; 0021 0022 /** Show SMART properties. 0023 0024 Dialog that shows SMART status and properties for a device 0025 0026 @author Volker Lanz <vl@fidra.de> 0027 */ 0028 class SmartDialog : public QDialog 0029 { 0030 Q_DISABLE_COPY(SmartDialog) 0031 0032 public: 0033 SmartDialog(QWidget* parent, Device& d); 0034 ~SmartDialog(); 0035 0036 protected: 0037 void saveSmartReport(); 0038 0039 void setupDialog(); 0040 void setupConnections(); 0041 0042 Device& device() { 0043 return m_Device; 0044 } 0045 const Device& device() const { 0046 return m_Device; 0047 } 0048 0049 SmartDialogWidget& dialogWidget() { 0050 Q_ASSERT(m_DialogWidget); 0051 return *m_DialogWidget; 0052 } 0053 const SmartDialogWidget& dialogWidget() const { 0054 Q_ASSERT(m_DialogWidget); 0055 return *m_DialogWidget; 0056 } 0057 0058 QString toHtml() const; 0059 0060 private: 0061 Device& m_Device; 0062 SmartDialogWidget* m_DialogWidget; 0063 QDialogButtonBox* buttonBox; 0064 }; 0065 0066 #endif