def createRangeSlider(self): widget = RangeSlider(self) widget.setRange(0, 500) widget.setValues(100, 400) widget.sigValueChanged.connect(functools.partial(self.printEvent, "sigValueChanged")) widget.sigPositionChanged.connect(functools.partial(self.printEvent, "sigPositionChanged")) widget.sigPositionCountChanged.connect(functools.partial(self.printEvent, "sigPositionCountChanged")) return widget
def createRangeSliderWithBackground(self): widget = RangeSlider(self) widget.setRange(0, 500) widget.setValues(100, 400) background = numpy.sin(numpy.arange(250) / 250.0) background[0], background[-1] = background[-1], background[0] colormap = Colormap("viridis") widget.setGroovePixmapFromProfile(background, colormap) return widget
def setUp(self): self.slider = RangeSlider() self.slider.show() self.qWaitForWindowExposed(self.slider)
class TestRangeSlider(TestCaseQt, ParametricTestCase): """Tests for TestRangeSlider""" def setUp(self): self.slider = RangeSlider() self.slider.show() self.qWaitForWindowExposed(self.slider) def tearDown(self): self.slider.setAttribute(qt.Qt.WA_DeleteOnClose) self.slider.close() del self.slider self.qapp.processEvents() def testRangeValue(self): """Test slider range and values""" # Play with range self.slider.setRange(1, 2) self.assertEqual(self.slider.getRange(), (1., 2.)) self.assertEqual(self.slider.getValues(), (1., 1.)) self.slider.setMinimum(-1) self.assertEqual(self.slider.getRange(), (-1., 2.)) self.assertEqual(self.slider.getValues(), (1., 1.)) self.slider.setMaximum(0) self.assertEqual(self.slider.getRange(), (-1., 0.)) self.assertEqual(self.slider.getValues(), (0., 0.)) # Play with values self.slider.setFirstValue(-2.) self.assertEqual(self.slider.getValues(), (-1., 0.)) self.slider.setFirstValue(-0.5) self.assertEqual(self.slider.getValues(), (-0.5, 0.)) self.slider.setSecondValue(2.) self.assertEqual(self.slider.getValues(), (-0.5, 0.)) self.slider.setSecondValue(-0.1) self.assertEqual(self.slider.getValues(), (-0.5, -0.1)) def testStepCount(self): """Test related to step count""" self.slider.setPositionCount(11) self.assertEqual(self.slider.getPositionCount(), 11) self.slider.setFirstValue(0.32) self.assertEqual(self.slider.getFirstValue(), 0.3) self.assertEqual(self.slider.getFirstPosition(), 3) self.slider.setPositionCount(3) # Value is adjusted self.assertEqual(self.slider.getValues(), (0.5, 1.)) self.assertEqual(self.slider.getPositions(), (1, 2)) def testGroove(self): """Test Groove pixmap""" profile = list(range(100)) for cmap in ('jet', colors.Colormap('viridis')): with self.subTest(str(cmap)): self.slider.setGroovePixmapFromProfile(profile, cmap) pixmap = self.slider.getGroovePixmap() self.assertIsInstance(pixmap, qt.QPixmap) self.assertEqual(pixmap.width(), len(profile))