2017-12-30 00:35:41 +00:00
|
|
|
|
|
|
|
class Widget:
|
|
|
|
|
|
|
|
|
2018-09-09 12:52:59 +00:00
|
|
|
def __init__(self, impl, name=None):
|
2017-12-30 00:35:41 +00:00
|
|
|
self.impl = impl
|
|
|
|
|
|
|
|
self.win = None
|
2018-01-02 12:28:23 +00:00
|
|
|
self.screen = None
|
2017-12-30 00:35:41 +00:00
|
|
|
self.changed = False
|
2018-09-06 16:51:15 +00:00
|
|
|
self.hidden = False
|
2018-09-09 12:52:59 +00:00
|
|
|
self.name = name
|
|
|
|
self.impl.setWidget(self)
|
2017-12-30 00:35:41 +00:00
|
|
|
|
2018-01-02 12:28:23 +00:00
|
|
|
def setWin(self, win, screen):
|
2017-12-30 00:35:41 +00:00
|
|
|
self.win = win
|
2018-01-02 12:28:23 +00:00
|
|
|
self.screen = screen
|
2017-12-30 00:35:41 +00:00
|
|
|
|
|
|
|
def getWin(self):
|
2018-01-02 12:28:23 +00:00
|
|
|
return self.win and self.screen and self.screen.getWin(self.win)
|
2017-12-30 00:35:41 +00:00
|
|
|
|
|
|
|
def getImpl(self):
|
|
|
|
return self.impl
|
|
|
|
|
|
|
|
def change(self):
|
|
|
|
self.changed = True
|
|
|
|
|
2018-01-02 12:28:23 +00:00
|
|
|
def isChanged(self):
|
|
|
|
return self.changed
|
|
|
|
|
2018-01-01 21:22:25 +00:00
|
|
|
def update(self):
|
2018-09-06 16:51:15 +00:00
|
|
|
if not self.getWin() or self.hidden:
|
2017-12-30 00:35:41 +00:00
|
|
|
return
|
2018-09-05 16:46:29 +00:00
|
|
|
self.impl.update(self.getWin())
|
2017-12-30 00:35:41 +00:00
|
|
|
self.changed = False
|