def _create_applications(self): """Creates all application classes that the MainLoop coordinates. This does NOT start them- that's done later. WARNING: the gui assumes the apps exist! """ #create the Bank application: Bank.start() self.bankApp = Bank.get() #create the Tor application: Tor.start() self.torApp = Tor.get() #create the pseudo applications for InnomiNet BitBlinder.start(self.torApp, self.bankApp) self.bbApp = BitBlinder.get() #create the applications: BitTorrentClient.start(self.torApp) self.btApp = BitTorrentClient.get() self.bbApp.add_application(self.btApp) if System.IS_WINDOWS: FirefoxPortable.start(self.torApp) self.ffApp = FirefoxPortable.get() self.bbApp.add_application(self.ffApp) self.gui.on_applications_created(self.bankApp, self.torApp, self.bbApp, self.btApp, self.ffApp)