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