1 /* Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
2    file Copyright.txt or https://cmake.org/licensing for details.  */
3 #pragma once
4 
5 #include "QCMake.h"
6 #include <QDialog>
7 #include <QWidget>
8 
9 #include "ui_WarningMessagesDialog.h"
10 
11 /**
12  * Dialog window for setting the warning message related options.
13  */
14 class WarningMessagesDialog
15   : public QDialog
16   , public Ui_MessagesDialog
17 {
18   Q_OBJECT
19 
20 public:
21   WarningMessagesDialog(QWidget* prnt, QCMake* instance);
22 
23 private slots:
24   /**
25    * Handler for the accept event of the ok/cancel button box.
26    */
27   void doAccept();
28 
29   /**
30    * Handler for checked state changed event of the suppress developer warnings
31    * checkbox.
32    */
33   void doSuppressDeveloperWarningsChanged(int state);
34   /**
35    * Handler for checked state changed event of the suppress deprecated
36    * warnings checkbox.
37    */
38   void doSuppressDeprecatedWarningsChanged(int state);
39 
40   /**
41    * Handler for checked state changed event of the developer warnings as
42    * errors checkbox.
43    */
44   void doDeveloperWarningsAsErrorsChanged(int state);
45   /**
46    * Handler for checked state changed event of the deprecated warnings as
47    * errors checkbox.
48    */
49   void doDeprecatedWarningsAsErrorsChanged(int state);
50 
51 private:
52   QCMake* cmakeInstance;
53 
54   /**
55    * Set the initial values of the widgets on this dialog window, using the
56    * current state of the cache.
57    */
58   void setInitialValues();
59 
60   /**
61    * Setup the signals for the widgets on this dialog window.
62    */
63   void setupSignals();
64 };
65