qBittorrent
tristateaction.h
Go to the documentation of this file.
1
/*
2
* Bittorrent Client using Qt and libtorrent.
3
* Copyright (C) 2019 Mike Tzou (Chocobo1)
4
*
5
* This program is free software; you can redistribute it and/or
6
* modify it under the terms of the GNU General Public License
7
* as published by the Free Software Foundation; either version 2
8
* of the License, or (at your option) any later version.
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with this program; if not, write to the Free Software
17
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18
*
19
* In addition, as a special exception, the copyright holders give permission to
20
* link this program with the OpenSSL project's "OpenSSL" library (or with
21
* modified versions of it that use the same license as the "OpenSSL" library),
22
* and distribute the linked executables. You must obey the GNU General Public
23
* License in all respects for all of the code used other than "OpenSSL". If you
24
* modify file(s), you may extend this exception to your version of the file(s),
25
* but you are not obligated to do so. If you do not wish to do so, delete this
26
* exception statement from your version.
27
*/
28
29
#pragma once
30
31
#include <QWidgetAction>
32
33
class
QString;
34
class
QWidget;
35
36
class
TriStateWidget
;
37
38
// TriStateWidget is responsible for checkbox state (tri-state) and paint events while
39
// TriStateAction will keep in sync with it. This allows connecting with the usual
40
// QAction::triggered or QAction::toggled slots.
41
class
TriStateAction
:
public
QWidgetAction
42
{
43
public
:
44
TriStateAction
(
const
QString &text, QWidget *parent);
45
46
// should use this function instead of QAction::setChecked(bool)
47
void
setCheckState
(Qt::CheckState checkState);
48
49
// When set to 'true' toggling the checkbox will emit a signal on
50
// QAction::triggered. When placed in a QMenu, this causes the menu to close.
51
// When set to 'false' emits a signal on QAction::toggled instead, leaving the
52
// menu open.
53
// Default value: 'true'.
54
void
setCloseOnInteraction
(
bool
enabled);
55
56
private
:
57
TriStateWidget
*
m_triStateWidget
;
58
};
TriStateAction
Definition:
tristateaction.h:42
TriStateAction::TriStateAction
TriStateAction(const QString &text, QWidget *parent)
Definition:
tristateaction.cpp:36
TriStateAction::setCheckState
void setCheckState(Qt::CheckState checkState)
Definition:
tristateaction.cpp:52
TriStateAction::setCloseOnInteraction
void setCloseOnInteraction(bool enabled)
Definition:
tristateaction.cpp:58
TriStateAction::m_triStateWidget
TriStateWidget * m_triStateWidget
Definition:
tristateaction.h:57
TriStateWidget
Definition:
tristatewidget.h:36
src
gui
tristateaction.h
Generated on Wed May 4 2022 08:51:14 for qBittorrent by
1.9.1