diff options
Diffstat (limited to 'asciifarm/client/display/widget.py')
| -rw-r--r-- | asciifarm/client/display/widget.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/asciifarm/client/display/widget.py b/asciifarm/client/display/widget.py new file mode 100644 index 0000000..ef28d50 --- /dev/null +++ b/asciifarm/client/display/widget.py @@ -0,0 +1,30 @@ + + + +class Widget: + + + def __init__(self, impl): + self.impl = impl + self.impl.setWidget(self) + + self.win = None + self.changed = False + + def setWin(self, win): + self.win = win + + def getWin(self): + return self.win + + def getImpl(self): + return self.impl + + def change(self): + self.changed = True + + def update(self, force=False): + if not (force or self.changed) or not self.win: + return + self.impl.update() + self.changed = False |
