# Path: ui/stack/color.py
# class Color:
#   def __init__(self, r, g, b, a = 1.0):
#     self._r = r
#     self._g = g
#     self._b = b
#     self._a = a
# 
#   def render(self):
#     glColor(self._r, self._g, self._b, self._a)


from OpenGL.GL import *
from ui.stack.color import Color

injectionSymbolBackgroundColor = Color(r = 0.4, g = 0.4, b = 0.7, a = 1.0)
injectionVariableBackgroundColor = Color(r = 0.2, g = 0.2, b = 0.9, a = 1.0)

projectionSymbolBackgroundColor = Color(r = 0.4, g = 0.4, b = 0.7, a = 1.0)
projectionVariableBackgroundColor = Color(r = 0.2, g = 0.2, b = 0.9, a = 1.0)

callSymbolBackgroundColor = Color(r = 0.4, g = 0.4, b = 0.7, a = 1.0)
callVariableBackgroundColor = Color(r = 0.2, g = 0.2, b = 0.9, a = 1.0)

_colorPairs = [ ( Color(r = 1.0, g = 0.3, b = 0.3, a = 1.0)
                , Color(r = 0.8, g = 0.5, b = 0.5, a = 1.0))

              , ( Color(r = 0.3, g = 1.0, b = 0.3, a = 1.0)
                , Color(r = 0.5, g = 0.8, b = 0.5, a = 1.0))

              , ( Color(r = 0.3, g = 0.3, b = 1.0, a = 1.0)
                , Color(r = 0.5, g = 0.5, b = 0.8, a = 1.0))
              ]

def productPairsColor(i):
  return _colorPairs[i % len(_colorPairs)]

def exponentialColor(isAlways):
  if isAlways:
    return alwaysBackgroundColor
  else:
    return maybeBackgroundColor

projectDotColor = Color(r = 0.0, g = 0.0, b = 0.0)

# Path: ui/stack/color.py
# class Color:
#   def __init__(self, r, g, b, a = 1.0):
#     self._r = r
#     self._g = g
#     self._b = b
#     self._a = a
# 
#   def render(self):
#     glColor(self._r, self._g, self._b, self._a)


# Path: ui/render/gl/colors.py
from OpenGL.GL import *
from ui.stack.color import Color


injectionSymbolBackgroundColor = Color(r = 0.4, g = 0.4, b = 0.7, a = 1.0)
injectionVariableBackgroundColor = Color(r = 0.2, g = 0.2, b = 0.9, a = 1.0)

projectionSymbolBackgroundColor = Color(r = 0.4, g = 0.4, b = 0.7, a = 1.0)
projectionVariableBackgroundColor = Color(r = 0.2, g = 0.2, b = 0.9, a = 1.0)

callSymbolBackgroundColor = Color(r = 0.4, g = 0.4, b = 0.7, a = 1.0)
callVariableBackgroundColor = Color(r = 0.2, g = 0.2, b = 0.9, a = 1.0)

_colorPairs = [ ( Color(r = 1.0, g = 0.3, b = 0.3, a = 1.0)
                , Color(r = 0.8, g = 0.5, b = 0.5, a = 1.0))

              , ( Color(r = 0.3, g = 1.0, b = 0.3, a = 1.0)
                , Color(r = 0.5, g = 0.8, b = 0.5, a = 1.0))

              , ( Color(r = 0.3, g = 0.3, b = 1.0, a = 1.0)
                , Color(r = 0.5, g = 0.5, b = 0.8, a = 1.0))
              ]

def productPairsColor(i):
  return _colorPairs[i % len(_colorPairs)]

def exponentialColor(isAlways):
  if isAlways:
    return alwaysBackgroundColor
  else:
    return maybeBackgroundColor

projectDotColor = Color(r = 0.0, g = 0.0, b = 0.0)

injectDotColor = Color(r = 0.5, g = 0.5, b = 0.5)