Source code for schrodinger.ui.qt.standard.design_tokens
"""
Design tokens refer to values set by the UX team in the PanelX design system.
These tokens define the single source of truth for typography, coloring, and
dimensions.
"""
import string
[docs]class PrimaryColors:
"""
The hex values for the only non-gray colors used in PanelX.
These colors are variations of blues. Tints are lighter variations of the
primary blue. Shades are darker variations of the primary blue.
"""
TINT_30 = "#7AC7EA"
TINT_50 = "#A0D7F0"
TINT_90 = "#ECF7FC"
PRIMARY = "#41B1E1"
SHADE_10 = "#3B9FCB"
SHADE_20 = "#338CB2"
SHADE_60 = "#19475A"
[docs]class GrayColors:
"""
The hex values for the only gray-scale colors used in PanelX.
"""
WHITE = "#FFFFFF"
GRAY_05 = "#F3F3F3"
GRAY_10 = "#E6E6E6"
GRAY_20 = "#CCCCCC"
GRAY_30 = "B3B3B3"
GRAY_40 = "#999999"
GRAY_90 = "#191919"
BLACK = "#000000"
[docs]class StateColors:
"""
Colors for different widget states.
"""
ACTIVE = PrimaryColors.PRIMARY
HOVER = PrimaryColors.TINT_50
PRESSED = PrimaryColors.SHADE_20
DISABLED = GrayColors.GRAY_30
[docs]class TextColors:
DEFAULT = GrayColors.GRAY_90
LIGHT = GrayColors.GRAY_30
DISABLED = GrayColors.GRAY_20
ACTIVE = StateColors.ACTIVE
HOVER = StateColors.HOVER
PRESSED = StateColors.PRESSED
WHITE = GrayColors.WHITE
[docs]class ColorGradients:
_VERTICAL = string.Template(
"qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 $GRADIENT_START, stop:1 $GRADIENT_END"
)
_HORIZONTAL = string.Template(
"qlineargradient(x1:0, y1:0, x2:1, y2:0, stop:0 $GRADIENT_START, stop:1 $GRADIENT_END"
)
_DEFAULT_COLORS = {
'GRADIENT_START': PrimaryColors.PRIMARY,
'GRADIENT_END': PrimaryColors.SHADE_10
}
_HOVER_COLORS = {
'GRADIENT_START': PrimaryColors.TINT_50,
'GRADIENT_END': PrimaryColors.PRIMARY
}
_PRESSED_COLORS = {
'GRADIENT_START': PrimaryColors.SHADE_20,
'GRADIENT_END': PrimaryColors.SHADE_60
}
DEFAULT_VERTICAL = _VERTICAL.substitute(_DEFAULT_COLORS)
DEFAULT_HORIZONTAL = _HORIZONTAL.substitute(_DEFAULT_COLORS)
HOVER_VERTICAL = _VERTICAL.substitute(_HOVER_COLORS)
HOVER_HORIZONTAL = _HORIZONTAL.substitute(_HOVER_COLORS)
PRESSED_VERTICAL = _VERTICAL.substitute(_PRESSED_COLORS)
PRESSED_HORIZONTAL = _HORIZONTAL.substitute(_PRESSED_COLORS)
[docs]class BorderColors:
"""
Colors for widget borders.
"""
ACTIVE = StateColors.ACTIVE
DEFAULT = GrayColors.GRAY_20
HOVER = StateColors.HOVER
PRESSED = StateColors.PRESSED
DISABLED = StateColors.DISABLED
[docs]class BackgroundColors:
"""
Colors for widget backgrounds.
"""
WHITE = GrayColors.WHITE
PANEL = GrayColors.GRAY_10
DISABLED_FORM_FIELD = GrayColors.GRAY_05
DISABLED_BUTTON = GrayColors.GRAY_20
[docs]class FontSizes:
DEFAULT = 12
MD = 20
LG = 26
XL = 28
[docs]class FontWeights:
DEFAULT = 400
BOLD = 600