mirror of
https://github.com/pyapp-kit/superqt.git
synced 2026-01-05 11:50:51 +01:00
offset for ticks
This commit is contained in:
@@ -40,7 +40,8 @@ class DemoWidget(QtW.QWidget):
|
||||
range_hslider = QRangeSlider(QtCore.Qt.Horizontal)
|
||||
range_hslider.setValue((20, 80))
|
||||
multi_range_hslider = QRangeSlider(QtCore.Qt.Horizontal)
|
||||
multi_range_hslider.setValue((10, 40, 60, 90))
|
||||
multi_range_hslider.setValue((11, 33, 66, 88))
|
||||
multi_range_hslider.setTickPosition(QtW.QSlider.TicksAbove)
|
||||
|
||||
styled_reg_hslider = QtW.QSlider(QtCore.Qt.Horizontal)
|
||||
styled_reg_hslider.setValue(50)
|
||||
@@ -100,6 +101,7 @@ class DemoWidget(QtW.QWidget):
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
dest = Path("screenshots")
|
||||
@@ -107,4 +109,8 @@ if __name__ == "__main__":
|
||||
|
||||
app = QtW.QApplication([])
|
||||
demo = DemoWidget()
|
||||
demo.grab().save(str(dest / "demo_widget.png"))
|
||||
|
||||
if "-x" in sys.argv:
|
||||
app.exec_()
|
||||
else:
|
||||
demo.grab().save(str(dest / "demo_widget.png"))
|
||||
|
||||
@@ -273,13 +273,20 @@ class QRangeSlider(QSlider):
|
||||
r_bar = QRectF(r_groove)
|
||||
hdl_low, *_, hdl_high = self._handleRects(opt)
|
||||
|
||||
tp = self.tickPosition()
|
||||
if tp & QSlider.TicksAbove:
|
||||
displace = 4
|
||||
elif tp & QSlider.TicksBelow:
|
||||
displace = -4
|
||||
else:
|
||||
displace = 0
|
||||
if opt.orientation == Qt.Horizontal:
|
||||
r_bar.setTop(r_bar.center().y() - self._bar_height / 2)
|
||||
r_bar.setTop(r_bar.center().y() - self._bar_height / 2 + displace)
|
||||
r_bar.setHeight(self._bar_height)
|
||||
r_bar.setLeft(hdl_low.center().x())
|
||||
r_bar.setRight(hdl_high.center().x())
|
||||
else:
|
||||
r_bar.setLeft(r_bar.center().x() - self._bar_width / 2)
|
||||
r_bar.setLeft(r_bar.center().x() - self._bar_width / 2 + displace)
|
||||
r_bar.setWidth(self._bar_width)
|
||||
r_bar.setBottom(hdl_low.center().y())
|
||||
r_bar.setTop(hdl_high.center().y())
|
||||
|
||||
Reference in New Issue
Block a user