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