# Copyright (c) <2015-Present> Tzutalin# Copyright (C) 2013 MIT, Computer Science and Artificial Intelligence Laboratory. Bryan Russell, Antonio Torralba,# William T. Freeman. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and# associated documentation files (the "Software"), to deal in the Software without restriction, including without# limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the# Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:# The above copyright notice and this permission notice shall be included in all copies or substantial portions of# the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT# NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT# SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF# CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN# THE SOFTWARE.try:fromPyQt5.QtGuiimport*fromPyQt5.QtCoreimport*fromPyQt5.QtWidgetsimport*exceptImportError:fromPyQt4.QtGuiimport*fromPyQt4.QtCoreimport*classZoomWidget(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(u'Zoom Level')self.setStatusTip(self.toolTip())self.setAlignment(Qt.AlignCenter)defminimumSizeHint(self):height=super(ZoomWidget,self).minimumSizeHint().height()fm=QFontMetrics(self.font())width=fm.width(str(self.maximum()))returnQSize(width,height)