2019-01-04 17:32:17 -06:00
|
|
|
# -*- coding: utf-8 -*-
|
|
|
|
from pubsub import pub
|
|
|
|
|
|
|
|
class baseInteractor(object):
|
|
|
|
|
|
|
|
def install(self, view, presenter, modulename):
|
|
|
|
self.modulename = modulename
|
|
|
|
self.view = view
|
|
|
|
self.presenter = presenter
|
|
|
|
pub.subscribe(self.disable_control, "{modulename}_disable_control".format(modulename=modulename))
|
|
|
|
pub.subscribe(self.enable_control, "{modulename}_enable_control".format(modulename=modulename))
|
|
|
|
pub.subscribe(self.set_label, "{modulename}_set_label".format(modulename=modulename))
|
|
|
|
pub.subscribe(self.focus_control, "{modulename}_focus_control".format(modulename=modulename))
|
2019-01-06 19:41:00 -06:00
|
|
|
pub.subscribe(self.set_title, "{modulename}_set_title".format(modulename=modulename))
|
2019-01-04 17:32:17 -06:00
|
|
|
|
|
|
|
def uninstall(self):
|
|
|
|
pub.unsubscribe(self.disable_control, "{modulename}_disable_control".format(modulename=self.modulename))
|
|
|
|
pub.unsubscribe(self.enable_control, "{modulename}_enable_control".format(modulename=self.modulename))
|
|
|
|
pub.unsubscribe(self.set_label, "{modulename}_set_label".format(modulename=self.modulename))
|
|
|
|
pub.unsubscribe(self.focus_control, "{modulename}_focus_control".format(modulename=self.modulename))
|
2019-01-06 19:41:00 -06:00
|
|
|
pub.unsubscribe(self.set_title, "{modulename}_set_title".format(modulename=self.modulename))
|
2019-01-10 13:00:08 -06:00
|
|
|
self.view.Destroy()
|
2019-01-06 19:41:00 -06:00
|
|
|
|
|
|
|
def start(self):
|
|
|
|
self.result = self.view.get_response()
|
2019-01-04 17:32:17 -06:00
|
|
|
|
|
|
|
def disable_control(self, control):
|
|
|
|
self.view.disable(control)
|
|
|
|
|
|
|
|
def enable_control(self, control):
|
|
|
|
self.view.enable(control)
|
|
|
|
|
|
|
|
def focus_control(self, control):
|
|
|
|
getattr(self.view, control).SetFocus()
|
|
|
|
|
|
|
|
def set_label(self, control, label):
|
|
|
|
self.view.set(control, label)
|
2019-01-06 19:41:00 -06:00
|
|
|
|
|
|
|
def set_title(self, value):
|
|
|
|
self.view.SetTitle(value)
|