blob: e5f06606d0715dbb601550b22278eb0596d005f6 [file] [log] [blame] [edit]
/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
file LICENSE.rst or https://cmake.org/licensing for details. */
#pragma once
#include "QCMake.h"
#include <QDialog>
#include <QWidget>
#include "ui_WarningMessagesDialog.h"
/**
* Dialog window for setting the warning message related options.
*/
class WarningMessagesDialog
: public QDialog
, public Ui_MessagesDialog
{
Q_OBJECT
#if QT_VERSION >= QT_VERSION_CHECK(6, 7, 0)
using CheckState = Qt::CheckState;
#else
using CheckState = int;
#endif
public:
WarningMessagesDialog(QWidget* prnt, QCMake* instance);
private slots:
/**
* Handler for the accept event of the ok/cancel button box.
*/
void doAccept();
/**
* Handler for checked state changed event of the suppress developer warnings
* checkbox.
*/
void doSuppressDeveloperWarningsChanged(CheckState state);
/**
* Handler for checked state changed event of the suppress deprecated
* warnings checkbox.
*/
void doSuppressDeprecatedWarningsChanged(CheckState state);
/**
* Handler for checked state changed event of the developer warnings as
* errors checkbox.
*/
void doDeveloperWarningsAsErrorsChanged(CheckState state);
/**
* Handler for checked state changed event of the deprecated warnings as
* errors checkbox.
*/
void doDeprecatedWarningsAsErrorsChanged(CheckState state);
private:
QCMake* cmakeInstance;
/**
* Set the initial values of the widgets on this dialog window, using the
* current state of the cache.
*/
void setInitialValues();
/**
* Setup the signals for the widgets on this dialog window.
*/
void setupSignals();
};