1# -*- coding: utf-8 -*-
2#
3# (c) Copyright 2001-2015 HP Development Company, L.P.
4#
5# This program is free software; you can redistribute it and/or modify
6# it under the terms of the GNU General Public License as published by
7# the Free Software Foundation; either version 2 of the License, or
8# (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., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
18#
19# Authors: Don Welch
20#
21
22
23
24# Qt
25from PyQt4.QtCore import *
26from PyQt4.QtGui import *
27
28
29
30class ReadOnlyRadioButton(QRadioButton):
31    def __init__(self, parent):
32        QRadioButton.__init__(self, parent)
33        self.setFocusPolicy(Qt.NoFocus)
34        self.clearFocus()
35
36
37    def mousePressEvent(self, e):
38        if e.button() == Qt.LeftButton:
39            return
40
41        QRadioButton.mousePressEvent(e)
42
43
44    def mouseReleaseEvent(self, e):
45        if e.button() == Qt.LeftButton:
46            return
47
48        QRadioButton.mouseReleaseEvent(e)
49
50
51    def mouseMoveEvent(self, e):
52        return
53
54
55    def keyPressEvent(self, e):
56        if e.key() not in (Qt.Key_Up, Qt.Key_Left, Qt.Key_Right,
57                           Qt.Key_Down, Qt.Key_Escape):
58            return
59
60        QRadioButton.keyPressEvent(e)
61
62
63    def keyReleaseEvent(self, e):
64        return
65