BibleTime
src
frontend
keychooser
versekeychooser
btversekeymenu.h
Go to the documentation of this file.
1
/*********
2
*
3
* In the name of the Father, and of the Son, and of the Holy Spirit.
4
*
5
* This file is part of BibleTime's source code, https://bibletime.info/
6
*
7
* Copyright 1999-2021 by the BibleTime developers.
8
* The BibleTime source code is licensed under the GNU General Public License
9
* version 2.0.
10
*
11
**********/
12
13
#pragma once
14
15
#include <QMenu>
16
17
#include <QObject>
18
#include <QString>
19
20
21
class
QMouseEvent;
22
class
QTimerEvent;
23
class
QWidget
;
24
25
/**
26
* Menu for book/ch/v dropdown lists.
27
*
28
* This is implemented mostly because it needs a delay which prevents unwanted actions after
29
* the menu has been shown and mouse button is released over some item.
30
*/
31
class
BtVerseKeyMenu
:
public
QMenu
{
32
Q_OBJECT
33
public
:
34
BtVerseKeyMenu
(
QWidget
* parent);
35
protected
:
36
void
mouseReleaseEvent
(QMouseEvent* event)
override
;
37
/** Frees the mouse button release after the delay has elapsed.*/
38
void
timerEvent
(QTimerEvent* event)
override
;
39
40
private
:
41
int
m_timerId
;
42
bool
m_firstClickLock
;
43
};
BtVerseKeyMenu
Definition:
btversekeymenu.h:31
BtVerseKeyMenu::m_firstClickLock
bool m_firstClickLock
Definition:
btversekeymenu.h:42
BtVerseKeyMenu::timerEvent
void timerEvent(QTimerEvent *event) override
Definition:
btversekeymenu.cpp:36
BtVerseKeyMenu::m_timerId
int m_timerId
Definition:
btversekeymenu.h:41
BtVerseKeyMenu::BtVerseKeyMenu
BtVerseKeyMenu(QWidget *parent)
Definition:
btversekeymenu.cpp:20
BtVerseKeyMenu::mouseReleaseEvent
void mouseReleaseEvent(QMouseEvent *event) override
Definition:
btversekeymenu.cpp:49
QMenu
QWidget
Generated by
1.9.1