Exemple #1
0
		public void Initialize(IRenderer renderer, IModel model, IControlPanel panel, Form mainWindow, UserControl viewportWindow)
		{
			m_renderer = renderer;
			m_model = model;
			m_panel = panel;

			m_model.ActionMapAssigned += OnModelActionMapAssigned;
            m_renderer.Model = m_model;

			m_panel.ActionTriggered += OnAction;

			mainWindow.Move += (_,__) =>
				m_model.Input(string.Format("move {0} {1} {2} {3}", mainWindow.Left, mainWindow.Top
																, viewportWindow.Width, viewportWindow.Height));

            mainWindow.Resize += (_,__) => 
                m_renderer.ChangeViewport(viewportWindow.Width, viewportWindow.Height);

			viewportWindow.Load += (_, __) => m_renderer.Start();
			viewportWindow.HandleDestroyed += (_, __) => m_renderer.Stop();

            //HACK: window movement as input for BOUNCE
			m_model.Input(string.Format("move init {0} {1}", mainWindow.Left, mainWindow.Top));

			// init viewport size
            m_renderer.ChangeViewport(viewportWindow.Width, viewportWindow.Height);
		}