public Form1() { InitializeComponent(); languageDictionary.Load("english", "alpha"); writingObserver.Initialize(languageDictionary); Logger.Initialize(lastMessageLabel); StatusManager.Initialize(statusLabel); UIUpdater.Initialize(this, predictedWordsTextBox, writingObserver); MessagesInterpreter.Initialize(connectedComponentsTool, writingObserver); Logger.LogInfo("app started"); this.FormClosed += Form1_FormClosed; this.drawPanelPublic = this.drawPanel; drawPanelPaintEventHandler = new PaintEventHandler(this.drawPanel_Paint); drawPanelMouseUpEventHandler = new MouseEventHandler(this.drawPanel_MouseUp); drawPanelMouseMoveEventHandler = new MouseEventHandler(this.drawPanel_MouseMove); drawPanelMouseDownEventHandler = new MouseEventHandler(this.drawPanel_MouseDown); ApplicationUseManager appUseManagerInstance = ApplicationUseManager.Instance; appUseManagerInstance.Initialize(this); appUseManagerInstance.TriggerApplicationNotReady(); ConnectionManager.StartListeningToConnections(); // !!!!!!!!!!!!!!!!!!!!!!!!! LET THE CLIENT START ALONG WITH THE MAIN APP!!!!!!!!!!!!!! ApplicationStarter.StartPythonClientFromStartingPoint(); m_connectedComponents = new List <ConnectedComponent>(); this.m_auxiliaryBitmap = new Bitmap(drawPanel.Width, drawPanel.Height, drawPanel.CreateGraphics()); Graphics.FromImage(m_auxiliaryBitmap).Clear(Color.White); connectedComponentsTool.Initialize(m_auxiliaryBitmap); }