WIP: on_event instead of constructor and constructor acceppting args
This commit is contained in:
+24
-1
@@ -1,16 +1,39 @@
|
||||
from update import update
|
||||
from browser import window
|
||||
|
||||
|
||||
class Message:
|
||||
def __init__(self, *args):
|
||||
self._args = args
|
||||
self.error = None
|
||||
|
||||
def update_model(self, model):
|
||||
raise NotImplementedError("This message does not implement update_model method")
|
||||
|
||||
def on_event(self, event):
|
||||
pass
|
||||
|
||||
def get_arg(self, n, argtype=None):
|
||||
if n > len(self._args):
|
||||
window.console.log("not enough arguments: {} <= {}".format(n, len(self._args)))
|
||||
|
||||
result = self._args[n]
|
||||
if argtype is not None:
|
||||
if not type(result) is argtype:
|
||||
window.console.trace("Error type check!")
|
||||
return None
|
||||
|
||||
return result
|
||||
|
||||
def add_arg(self, arg):
|
||||
self._args.append(arg)
|
||||
|
||||
def reset(self):
|
||||
return True
|
||||
|
||||
|
||||
class ClickMessage(Message):
|
||||
def __init__(self, event):
|
||||
def on_event(self, event):
|
||||
event.stopPropagation()
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user