Files
katrain-qt/gui/kivyutils.py
T
2020-04-16 21:47:38 +02:00

56 lines
1.2 KiB
Python

from kivy.core.text import Label as CoreLabel
from kivy.graphics import *
from kivy.uix.boxlayout import BoxLayout
class CheckBoxHint(BoxLayout):
__events__ = ("on_active",)
@property
def active(self):
return self.checkbox.active
def on_active(self, *args):
pass
class BWCheckBoxHint(BoxLayout):
__events__ = ("on_active",)
@property
def active_map(self):
return {"B": self.black.active, "W": self.white.active}
def active(self, player):
return self.active_map[player]
def on_active(self, *args):
pass
class CensorableLabel(BoxLayout):
@property
def text(self):
return self.value.text
class CensorableScoreLabel(BoxLayout):
@property
def text(self):
return self.value.text
def set_prisoners(self, bw):
self.black.text = str(bw[1])
self.white.text = str(bw[0])
def draw_text(pos, text, **kw):
label = CoreLabel(text=text, bold=True, **kw)
label.refresh()
Rectangle(texture=label.texture, pos=(pos[0] - label.texture.size[0] / 2, pos[1] - label.texture.size[1] / 2), size=label.texture.size)
def draw_circle(pos, r, col):
Color(*col)
Ellipse(pos=(pos[0] - r, pos[1] - r), size=(2 * r, 2 * r))