def __init__(self, controller_factory, track_mode=False, debug=False, mark_using_pixels=False, zoom=1): logger.debug("Creating Application View") self.controller = controller_factory.create_controller(self) self.wx_app = wx.App(False) logger.debug("App built") self.debug = debug self.mark_using_pixels = mark_using_pixels self.mainframe = MainFrame(self.controller, track_mode=track_mode) self.image_view_manager = ImageViewManager(self.mainframe, zoom) self.menu = Menu(self.mainframe, self.controller) self.keybind_manager = KeybindManager(self.mainframe, self.controller) self.loading_dialog = WaitingGaugeDialog(self.mainframe, "Image loading...") # Handle user clicking on the window's "x" button self.mainframe.Bind(wx.EVT_CLOSE, self._on_close_window) self.accept_source_dialog = None self.reject_source_dialog = None self.certificate_dialog = None self.retry_downloads_dialog = None # TODO refactor self.register_xy_changed_event_handler(self.controller.on_reposition_source) logger.debug("Done.")