add range slider component
This commit is contained in:
@@ -3,6 +3,8 @@ import re
|
||||
from PySide6.QtGui import QColor, QPixmap, QIcon
|
||||
from PySide6.QtWidgets import QWidget, QHBoxLayout, QPushButton, QColorDialog, QSizePolicy, QComboBox
|
||||
from src.i18n import _
|
||||
from src.util.color import to_qcolor
|
||||
|
||||
|
||||
class ColorButton(QWidget):
|
||||
def __init__(self, color: str, parent=None):
|
||||
@@ -69,7 +71,7 @@ class ColorButton(QWidget):
|
||||
self.color_drop_down.setCurrentIndex(self.color_drop_down.count() - 1)
|
||||
|
||||
def _update_color(self):
|
||||
new_color = QColorDialog.getColor(self._to_qcolor(self.color))
|
||||
new_color = QColorDialog.getColor(to_qcolor(self.color))
|
||||
if new_color.isValid():
|
||||
color = self._to_hex(new_color)
|
||||
self.set_color(color)
|
||||
@@ -80,20 +82,10 @@ class ColorButton(QWidget):
|
||||
|
||||
def _color_pixmap(self, color: str) -> QPixmap:
|
||||
pixmap = QPixmap(40, 40)
|
||||
qcolor = self._to_qcolor(color)
|
||||
qcolor = to_qcolor(color)
|
||||
pixmap.fill((qcolor))
|
||||
return pixmap
|
||||
|
||||
def _to_qcolor(self, color: str):
|
||||
if self._is_hex_color(color):
|
||||
red = int(color[0:2], 16)
|
||||
green = int(color[2:4], 16)
|
||||
blue = int(color[4:6], 16)
|
||||
return QColor(red, green, blue)
|
||||
elif color in QColor().colorNames():
|
||||
return QColor(color)
|
||||
return QColor(255, 255, 255)
|
||||
|
||||
def _to_hex(self, color: QColor) -> str:
|
||||
red = "{0:0{1}x}".format(color.red(), 2)
|
||||
green = "{0:0{1}x}".format(color.green(), 2)
|
||||
|
||||
Reference in New Issue
Block a user