File indexing completed on 2024-12-22 04:35:01
0001 /* 0002 SPDX-FileCopyrightText: 2009 Nokia Corporation and /or its subsidiary(-ies). 0003 Contact: Qt Software Information (qt-info@nokia.com) 0004 0005 This file is part of the QtCore module of the Qt Toolkit. 0006 0007 $QT_BEGIN_LICENSE:LGPL$ 0008 Commercial Usage 0009 Licensees holding valid Qt Commercial licenses may use this file in 0010 accordance with the Qt Commercial License Agreement provided with the 0011 Software or, alternatively, in accordance with the terms contained in 0012 a written agreement between you and Nokia. 0013 0014 GNU Lesser General Public License Usage 0015 Alternatively, this file may be used under the terms of the GNU Lesser 0016 General Public License version 2.1 as published by the Free Software 0017 Foundation and appearing in the file LICENSE.LGPL included in the 0018 packaging of this file. Please review the following information to 0019 ensure the GNU Lesser General Public License version 2.1 requirements 0020 will be met: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. 0021 0022 In addition, as a special exception, Nokia gives you certain 0023 additional rights. These rights are described in the Nokia Qt LGPL 0024 Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this 0025 package. 0026 0027 GNU General Public License Usage 0028 Alternatively, this file may be used under the terms of the GNU 0029 General Public License version 3.0 as published by the Free Software 0030 Foundation and appearing in the file LICENSE.GPL included in the 0031 packaging of this file. Please review the following information to 0032 ensure the GNU General Public License version 3.0 requirements will be 0033 met: https://www.gnu.org/licenses/gpl-3.0.html. 0034 0035 If you are unsure which license is appropriate for your use, please 0036 contact the sales department at qt-sales@nokia.com. 0037 $QT_END_LICENSE$ 0038 0039 */ 0040 0041 #ifndef QWINEVENTNOTIFIER_P_H 0042 #define QWINEVENTNOTIFIER_P_H 0043 0044 // 0045 // W A R N I N G 0046 // ------------- 0047 // 0048 // This file is not part of the Qt API. It exists for the convenience 0049 // of other Qt classes. This header file may change from version to 0050 // version without notice, or even be removed. 0051 // 0052 // We mean it. 0053 // 0054 0055 #include "QtCore/QtCore/QObject" 0056 #include "QtCore/qt_windows.h" 0057 0058 #include "k3b_export.h" 0059 0060 QT_BEGIN_NAMESPACE 0061 0062 class LIBK3B_EXPORT QWinEventNotifier : public QObject 0063 { 0064 Q_OBJECT 0065 Q_DECLARE_PRIVATE(QObject) 0066 0067 public: 0068 explicit QWinEventNotifier(QObject *parent = 0); 0069 explicit QWinEventNotifier(HANDLE hEvent, QObject *parent = 0); 0070 ~QWinEventNotifier(); 0071 0072 void setHandle(HANDLE hEvent); 0073 HANDLE handle() const; 0074 0075 bool isEnabled() const; 0076 0077 public Q_SLOTS: 0078 void setEnabled(bool enable); 0079 0080 Q_SIGNALS: 0081 void activated(HANDLE hEvent); 0082 0083 protected: 0084 bool event(QEvent * e); 0085 0086 private: 0087 Q_DISABLE_COPY(QWinEventNotifier) 0088 0089 HANDLE handleToEvent; 0090 bool enabled; 0091 }; 0092 0093 QT_END_NAMESPACE 0094 0095 #endif // QWINEVENTNOTIFIER_P_H