private void OnOpenProject(MenuEntry obj) { _coroutine.Run(() => _projectManagerUi.LoadProject()); }
public StartEditorWindow( IAssetManager assetManager, IProjectManager projectManager, IProjectManagerUi projectManagerUi, ICoroutine coroutine, IRecentProjects recentProjects, I2DRenderUtilities renderUtilities) { _assetManager = assetManager; _projectManager = projectManager; _coroutine = coroutine; _recentProjects = recentProjects; _renderUtilities = renderUtilities; Title = "Welcome!"; Icon = _assetManager.Get <TextureAsset>("texture.IconWelcome"); var newProject = new Button { Text = "New Project" }; var openProject = new Button { Text = "Open Project" }; openProject.Click += (sender, e) => { _coroutine.Run(() => projectManagerUi.LoadProject()); }; var buttonContainer = new HorizontalContainer(); buttonContainer.AddChild(newProject, "*"); buttonContainer.AddChild(new EmptyContainer(), "20"); buttonContainer.AddChild(openProject, "*"); _recentProjectsContainer = new VerticalContainer(); //var scrollableContainer = new ScrollableContainer(); //scrollableContainer.SetChild(_recentProjectsContainer); var verticalContainer = new VerticalContainer(); verticalContainer.AddChild(new Label { Font = _assetManager.Get <FontAsset>("font.Welcome"), Text = "Welcome to Protogame!", HorizontalAlignment = HorizontalAlignment.Left, VerticalAlignment = VerticalAlignment.Top }, "80"); verticalContainer.AddChild(buttonContainer, "60"); verticalContainer.AddChild(new EmptyContainer(), "24"); verticalContainer.AddChild(_recentProjectsContainer, "*"); var outerVertContainer = new VerticalContainer(); outerVertContainer.AddChild(new EmptyContainer(), "15%"); outerVertContainer.AddChild(verticalContainer, "*"); outerVertContainer.AddChild(new EmptyContainer(), "15%"); var outerHorContainer = new HorizontalContainer(); outerHorContainer.AddChild(new EmptyContainer(), "15%"); outerHorContainer.AddChild(outerVertContainer, "*"); outerHorContainer.AddChild(new EmptyContainer(), "15%"); SetChild(outerHorContainer); }