1 // Copyright (c) 2014 The Bitcoin Core developers
2 // Distributed under the MIT software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
5 #ifndef BITCOIN_QT_WINSHUTDOWNMONITOR_H
6 #define BITCOIN_QT_WINSHUTDOWNMONITOR_H
12 #if QT_VERSION >= 0x050000
13 #include <windef.h> // for HWND
15 #include <QAbstractNativeEventFilter>
17 class WinShutdownMonitor
: public QAbstractNativeEventFilter
20 /** Implements QAbstractNativeEventFilter interface for processing Windows messages */
21 bool nativeEventFilter(const QByteArray
&eventType
, void *pMessage
, long *pnResult
);
23 /** Register the reason for blocking shutdown on Windows to allow clean client exit */
24 static void registerShutdownBlockReason(const QString
& strReason
, const HWND
& mainWinId
);
29 #endif // BITCOIN_QT_WINSHUTDOWNMONITOR_H