swcolorpicker

Color picker component of smartwheel-core


Keywords
python, color, gui, colorpicker, visual
License
MIT
Install
pip install swcolorpicker==1.4.3

Documentation

This is the color picker component of smarthwheel-core. Forked from pyqt-colorpicker

Note: this project uses pyqtdarktheme by default, but it is not imported.

Simple visual Color Picker with a modern UI created with PyQt6 to easily get color input from the user.

colorpicker

Installation

  1. Install using pip:

    pip install swcolorpicker
    

    or clone the repository yourself and run:

    pip install .
    

Usage

  1. To ask for a color, import the getColor function and run it:

    from swcolorpicker import getColor
    
    color = getColor()

Customization

  • Showing custom last color:

    old_color = (255,255,255)
    picked_color = getColor(old_color)
  • Adding Alpha selection

    from swcolorpicker import useAlpha
    
    useAlpha(True)

    When the ColorPicker uses Alpha, you have to pass a RGBA tuple
    as the last color, otherwise there wil be an error.

    old_color = (255,255,255,100)
    picked_color = getColor(old_color)  # => (r,g,b,a)

Color Formats and Conversion

  • The default format getColor will give you is RGB(A),
    but you can use vcolorpickers color conversion functions
    if you have a different format like HSV or HEX.

    hsv2rgb HSV(A) to RGB(A)
    rgb2hsv RGB(A) to HSV(A)
    rgb2hex RGB(A) to HEX
    hex2rgb HEX to RGB
    hex2hsv HEX to HSV
    hsv2hex HSV(A) to HEX

  • Example:

    from swcolorpicker import getColor, hsv2rgb, rgb2hsv 
    
    old_color = hsv2rgb((50,50,100,100))  # => (127,255,255,100)
    
    picked_color = rgb2hsv(getColor(old_color))
  • Color Formats:

    RGB values range from 0 to 255
    HSV values range from 0 to 100
    HEX values should be in format: "XXXXXX" or "xxxxxx"
    Alpha values range from 0 to 100

Previous versions

In previous versions you had to create a ColorPicker object first and then
call it's getColor method. This is still supported, you just have to
import the ColorPicker class.

The color conversion functions are not methods anymore, you can import them
directly with from vcolorpicker import hsv2rgb, rgb2hsv.

You also had to create a QApplication object before being able to run the
ColorPicker, now it automatically creates one by itself if there isn't one yet.
If you need to get the auto-created application, you can use this:

from PyQt6.QtWidgets import QApplication
app = QApplication.instance()

License

This software is licensed under the MIT License.
More information is provided in the dedicated LICENSE file.