[timeline] fixes and improvements
This commit is contained in:
parent
25ee9f2b8b
commit
24c8584105
@ -13,6 +13,7 @@ class Timeline(QWidget):
|
|||||||
self._width = stop//10
|
self._width = stop//10
|
||||||
self._slider = QSlider(Qt.Orientation.Horizontal)
|
self._slider = QSlider(Qt.Orientation.Horizontal)
|
||||||
self._slider.setRange(start, stop)
|
self._slider.setRange(start, stop)
|
||||||
|
self._slider.setTickPosition(self._slider.TickPosition.TicksBelow)
|
||||||
self._slider.setTickInterval(int(stop // 10))
|
self._slider.setTickInterval(int(stop // 10))
|
||||||
self._slider.sliderReleased.connect(self._on_sliderReleased)
|
self._slider.sliderReleased.connect(self._on_sliderReleased)
|
||||||
self._slider.valueChanged.connect(self._on_sliderChanged)
|
self._slider.valueChanged.connect(self._on_sliderChanged)
|
||||||
@ -53,13 +54,16 @@ class Timeline(QWidget):
|
|||||||
self._width = width
|
self._width = width
|
||||||
self._stoplabel.setText(str(stop))
|
self._stoplabel.setText(str(stop))
|
||||||
self._slider.setSliderPosition(int(stop // 2))
|
self._slider.setSliderPosition(int(stop // 2))
|
||||||
|
self._slider.setTickInterval(self._width)
|
||||||
|
|
||||||
def setWindowWidth(self, newsize):
|
def setWindowWidth(self, newsize):
|
||||||
self._width = newsize
|
self._width = newsize
|
||||||
|
self._slider.setTickInterval(self._width)
|
||||||
if self._slider.value() < newsize // 2:
|
if self._slider.value() < newsize // 2:
|
||||||
self._slider.setSliderPosition(int(newsize // 2))
|
self._slider.setSliderPosition(int(newsize // 2))
|
||||||
elif self.sliderPosition > self._slider.maximum() - self._width //2:
|
elif self.sliderPosition > self._slider.maximum() - self._width //2:
|
||||||
self._slider.setSliderPosition(self._slider.maximum() - self._width //2)
|
self._slider.setSliderPosition(self._slider.maximum() - self._width //2)
|
||||||
|
self.signals.changed.emit(self._slider.sliderPosition())
|
||||||
|
|
||||||
def _on_sliderReleased(self):
|
def _on_sliderReleased(self):
|
||||||
value = self._slider.value()
|
value = self._slider.value()
|
||||||
|
Loading…
Reference in New Issue
Block a user