12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- # flake8: noqa
- #
- # Copyright (C) 2011 Michael Pitidis, Hussein Abdulwahid.
- #
- # This file is part of Labelme.
- #
- # Labelme is free software: you can redistribute it and/or modify
- # it under the terms of the GNU General Public License as published by
- # the Free Software Foundation, either version 3 of the License, or
- # (at your option) any later version.
- #
- # Labelme is distributed in the hope that it will be useful,
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- # GNU General Public License for more details.
- #
- # You should have received a copy of the GNU General Public License
- # along with Labelme. If not, see <http://www.gnu.org/licenses/>.
- #
- try:
- from PyQt5.QtGui import *
- from PyQt5.QtCore import *
- from PyQt5.QtWidgets import *
- except ImportError:
- from PyQt4.QtGui import *
- from PyQt4.QtCore import *
- class ZoomWidget(QSpinBox):
- def __init__(self, value=100):
- super(ZoomWidget, self).__init__()
- self.setButtonSymbols(QAbstractSpinBox.NoButtons)
- self.setRange(1, 500)
- self.setSuffix(' %')
- self.setValue(value)
- self.setToolTip('Zoom Level')
- self.setStatusTip(self.toolTip())
- self.setAlignment(Qt.AlignCenter)
- def minimumSizeHint(self):
- height = super(ZoomWidget, self).minimumSizeHint().height()
- fm = QFontMetrics(self.font())
- width = fm.width(str(self.maximum()))
- return QSize(width, height)
|