Example #1
0
        public async Task <string> GetWebPage(ExecutionContext executionContext, Constants.Pages webpage, object model)
        {
            if (_engine is null)
            {
                BuildEngine(executionContext);
            }

            return(await _engine.CompileRenderAsync(Constants.Templates[webpage], model));
        }
Example #2
0
        public void ShowControl(Constants.Pages pageType)
        {
            //all pages should have been generated on start
            if (!_pages.ContainsKey(pageType))
            {
                throw new Exception("Page not found");
            }

            //hide all other pages and show just the desired one
            var myControl = _pages[pageType];

            HideAllUserControls();
            myControl.Show();
            _view.AddControlToControlCollection(myControl);
        }
Example #3
0
        public void AddControlToPagesDictionaryIfNotPresent(Constants.Pages myPageType, Control myControl)
        {
            if (_pages.ContainsKey(myPageType))
            {
                return;
            }

            switch (myPageType)
            {
            case Constants.Pages.Login:
                var loginControl   = (ILoginControl)myControl;
                var loginPresenter = new LoginControlPresenter(loginControl, new LoginViewModel(), _shipService);
                loginPresenter.AuthenticationPassed += LoginControlPresenter_AuthenticationPassed;
                loginPresenter.AuthenticationFailed += LoginControlPresenter_AuthenticationFailed;

                _pages.Add(myPageType, myControl);
                return;

            case Constants.Pages.Ship:
                var shipControl   = (IShipControl)myControl;
                var shipPresenter = new ShipControlPesenter(shipControl, new ShipViewModel(), _shipService, _scale, _printer);
                shipPresenter.PageChangeRequested += OnPageChangeRequested;

                _pages.Add(myPageType, myControl);
                return;

            case Constants.Pages.ScaleSetup:
                var scaleSetupControl   = (IScaleSetupControl)myControl;
                var scaleSetupPresenter = new ScaleSetupControlPresenter(scaleSetupControl, new ScaleSetupViewModel());
                scaleSetupPresenter.PageChangeRequested  += OnPageChangeRequested;
                scaleSetupPresenter.ScaleSettingsChanged += ScaleSetupPresenterOnScaleSettingsChanged;

                _pages.Add(myPageType, myControl);

                return;

            default:
                throw new ArgumentException("Page type does not exist");
            }
        }
Example #4
0
 private void OnPageChangeRequested(object sender, Constants.Pages desiredPage)
 {
     ShowControl(desiredPage);
 }