/// <summary> /// Initialises the WizardForm, sets the controller and starts the wizard. /// </summary> /// <param name="controller">the wizrd controller that controls moving the wizard steps and the </param> /// <param name="controlFactory">The control factory to use for creating any controls</param> public WizardFormWin(IWizardController controller, IControlFactory controlFactory) { _wizardController = controller; var wizardControl = (WizardControlWin) controlFactory.CreateWizardControl(controller); SetupWizardControl(wizardControl); }
public void OnNavigatingTo(NavigationParameters parameters) { _wizardController = parameters.GetValue <IWizardController>("IWizardController"); _pageNumber = parameters.GetValue <int>("PageNumber"); DisplayQuestionAnswers = parameters.GetValue <List <DisplayQuestionAnswer> >("DisplayQuestionAnswer"); _answerValidationRequired = parameters.GetValue <bool>("AnswerValidationRequired"); }
/// <summary> /// Initialises the WizardForm, sets the controller and starts the wizard. /// </summary> /// <param name="controller">the wizrd controller that controls moving the wizard steps and the </param> /// <param name="controlFactory">The control factory to use for creating any controls</param> public WizardFormVWG(IWizardController controller, IControlFactory controlFactory) { _wizardController = controller; var wizardControl = (WizardControlVWG)controlFactory.CreateWizardControl(controller); SetupWizardControl(wizardControl); }
public Page3ViewModel(object resultPage, IList <OperationViewModel> operations, IWizardController wizardController) { Header = "Page 4: Operation Progress"; this.operations = operations; this.resultPage = resultPage; this.wizardController = wizardController; InitializeCommand = new RelayCommand <WizardPageInitParameters>(InitializeCommandExecute); timer.Tick += OnTimer; }
protected void ResetSteps(Controller controller) { IWizardController wizardController = controller as IWizardController; WizardStepPage[] steps = wizardController.GetSteps(controller.Context); foreach (WizardStepPage step in steps) { step.Reset(); } }
public Page2ViewModel(Object skipToPage, IList <OperationViewModel> operations, IWizardController wizardController) { Header = "Page 3: Operation Selection"; this.skipToPage = skipToPage; this.operations = operations; this.wizardController = wizardController; CommitCommand = new RelayCommand(CommitCommandExecute); SkipCommand = new RelayCommand(SkipCommandExecute); }
private void SetupWizardControl(WizardControlWin control) { _uxWizardControl = control; _wizardController = control.WizardController; this._uxWizardControl.MessagePosted += WizardControl_MessagePosted; this._uxWizardControl.Finished += this.WizardControl_Finished; this._uxWizardControl.StepChanged += this.WizardControl_StepChanged; this._uxWizardControl.CancelButton.Click += CancelButton_OnClick; InitializeComponent(); WizardControl.WizardController = _wizardController; DialogResult = Base.DialogResult.Cancel; this.Closing += WizardFormWin_Closing; }
private void SetupWizardControl(WizardControlVWG control) { _uxWizardControl = control; _wizardController = control.WizardController; this._uxWizardControl.MessagePosted += _uxWizardControl_MessagePosted; this._uxWizardControl.Finished += this._uxWizardControl_Finished; this._uxWizardControl.StepChanged += this._uxWizardControl_StepChanged; this._uxWizardControl.CancelButton.Click += CancelButton_OnClick; InitializeComponent(); WizardControl.WizardController = _wizardController; ((Form)this).DialogResult = Gizmox.WebGUI.Forms.DialogResult.Cancel; this.Closing += WizardFormGiz_Closing; }
public WizardFrame(IWizardController controller) { // // Erforderlich fĂĽr die Windows Form-DesignerunterstĂĽtzung // InitializeComponent(); this.controller = controller; ViewBase newView = null; WizardState newState; controller.OnInit(out newView, out newState); this.SetWizardState(newState); this.View = newView; }
private static bool Show(string title, IWizardController wizardController, bool showDialog, IControlFactory controlFactory) { WizardFormVWG form = new WizardFormVWG(wizardController, controlFactory); form.Text = title; form.StartPosition = FormStartPosition.CenterParent; if (showDialog) { return(form.ShowDialog() == (Gizmox.WebGUI.Forms.DialogResult)Base.DialogResult.OK); } form.Show(); return(true); }
public void OnNavigatingTo(NavigationParameters navigationParameters) { _wizardController = navigationParameters.GetValue <IWizardController>("IWizardController"); _pageNumber = navigationParameters.GetValue <int>("PageNumber"); var displayButtons = navigationParameters.GetValue <bool>("DisplayButtons"); Message = navigationParameters.GetValue <string>("Message"); ValidationResponse = navigationParameters.GetValue <ValidationResponse>("ValidationResponse"); DisplayErrors = ValidationResponse.Errors.Any(); DisplayContinueButton = !DisplayErrors; DisplayCancelButton = DisplayErrors; }
/// <summary> /// Initialises the WizardControl with the IWizardController. No logic is performed other than storing the wizard controller. /// </summary> /// <param name="wizardController"></param> /// <param name="controlFactory">The control factory that this control will use to create a button</param> public WizardControlVWG(IWizardController wizardController, IControlFactory controlFactory) { if (wizardController == null) throw new ArgumentNullException("wizardController"); if (controlFactory == null) throw new ArgumentNullException("controlFactory"); _wizardController = wizardController; _controlFactory = controlFactory; _wizardControlManager = new WizardControlManager(this); IPanel buttonPanel = CreateButtonPanel(); _wizardStepPanel = _controlFactory.CreatePanel(); BorderLayoutManagerVWG borderLayoutManager = new BorderLayoutManagerVWG(this, _controlFactory); borderLayoutManager.AddControl(_wizardStepPanel, BorderLayoutManager.Position.Centre); borderLayoutManager.AddControl(buttonPanel, BorderLayoutManager.Position.South); }
public async void OnNavigatingTo(NavigationParameters parameters) { if (!_initialized) { _initialized = true; _wizardController = parameters.GetValue <IWizardController>("IWizardController"); _pageNumber = parameters.GetValue <int>("PageNumber"); EntryBaseInfoPageModel = parameters.GetValue <EntryBaseInfoPageModel>("EntryBaseInfoPageModel"); if (Services == null) { await UpdateServices(); } } }
public async void OnNavigatingTo(NavigationParameters parameters) { _wizardController = parameters.GetValue <IWizardController>("IWizardController"); _pageNumber = parameters.GetValue <int>("PageNumber"); _selectedCase = parameters.GetValue <Case>("SelectedCase"); SelectedCaseIds = parameters.GetValue <List <int> >("SelectedCaseIds"); var cases = await _databaseService.GetAllCases(_applicationState.CurrentUser.Username); Cases = cases.OrderBy(c => c.ID != _selectedCase.ID) .ThenBy(c => c.Patient.PatientLastName) .ToList(); ContinueCommand = new DelegateCommand(() => OnContinueCommand().IgnoreResult()); CancelCommand = new DelegateCommand(() => OnCancelCommand().IgnoreResult()); }
private void SetUpWizardHelper(IEngineContext engineContext, IWizardController wizController, IController controller, IControllerContext controllerContext) { if (controller == null) { return; } var helper = new WizardHelper { WizardController = wizController }; helper.SetContext(engineContext); helper.SetController(controller, controllerContext); controllerContext.Helpers.Add(helper); }
public void Test_Next_ShouldCallWizardControllerNext() { //---------------Set up test pack------------------- IWizardController controller = MockRepository.GenerateMock <IWizardController>(); IWizardControl wizardControl = GetControlFactory().CreateWizardControl(controller); string message; controller.Stub(wizardController => wizardController.CanMoveOn(out message)).Return(true); controller.Stub(controller1 => controller1.GetNextStep()).Return(CreateWizardStepStub()); //---------------Assert Precondition---------------- Assert.IsTrue(controller.CanMoveOn(out message)); controller.AssertWasNotCalled(cntrler => cntrler.CompleteCurrentStep()); //---------------Execute Test ---------------------- wizardControl.Next(); //---------------Test Result ----------------------- controller.AssertWasCalled(cntrler => cntrler.CompleteCurrentStep()); }
// // Public Methods // public void Show(IWizardController controller, GameObject panel) { ClearEvents(); this.controller = controller; if (controller == null) { return; } RegisterEvents(); Current = panel; panel.SetActive(true); previousPanels.Clear(); previous = false; UpdateUI(); }
public void MakeForeignKey(ColumnNode columnNode, ForeignKeyWizModel model) { FkRelation fkRelation = null; RelationNode relationNode = null; if (model == null) { fkRelation = new FkRelation(columnNode.Name); relationNode = new RelationNode(fkRelation, columnNode.Parent); } else { fkRelation = (FkRelation)model.RelationNode.Relation; relationNode = model.RelationNode; } fkRelation.OwningTable = ((TableNode)relationNode.Parent).Table.Name; fkRelation.OwningType = ((TableNode)relationNode.Parent).Table.ClassName; IList tableNodes = new ArrayList(); if (model == null) { foreach (TableNode tnode in ((DatabaseNode)columnNode.Parent.Parent).TableNodes) { if (tnode.Table.MappingType == TableMappingType.MappedAsClass) { tableNodes.Add(tnode); } } model = new ForeignKeyWizModel(relationNode, tableNodes); IWizardController controller = ApplicationController.wizardControllerFactory.Create ("ForeignKeyWizController", "ForeignKeyWiz", "Foreign Key Wizard"); //controller.FrameSize = new Size( 544, 408 ); DialogResult r = controller.Run(model); if (r == DialogResult.OK) { MakeForeignKeyRelation(relationNode, columnNode, model); } } else { MakeForeignKeyRelation(relationNode, columnNode, model); } }
/// <summary> /// Invoked when a step is accessed on the url, /// i.e. http://host/mywizard/firststep.rails and /// when an inner action is invoked like http://host/mywizard/firststep-save.rails /// </summary> /// <param name="controller"></param> private void OnStepActionRequested(Controller controller) { controller.CancelView(); IRailsEngineContext context = controller.Context; IWizardController wizController = (IWizardController)controller; String wizardName = WizardUtils.ConstructWizardNamespace(controller); String currentStep = (String)context.Session[wizardName + "currentstep"]; // The step will inherit the controller property bag, // this way filters can pass values to the step property without having to know it currentStepInstance.PropertyBag = controller.PropertyBag; if (!wizController.OnBeforeStep(wizardName, currentStep, currentStepInstance)) { return; } WizardUtils.RegisterCurrentStepInfo(controller, currentStepInstance.ActionName); if (innerAction == null || innerAction == String.Empty) { currentStepInstance.Process( controller.Context, controller.ServiceProvider, urlInfo.Area, urlInfo.Controller, "RenderWizardView"); } else { currentStepInstance.Process( controller.Context, controller.ServiceProvider, urlInfo.Area, urlInfo.Controller, innerAction); } wizController.OnAfterStep(wizardName, currentStep, currentStepInstance); }
/// <summary> /// Initialises the WizardControl with the IWizardController. No logic is performed other than storing the wizard controller. /// </summary> /// <param name="wizardController"></param> /// <param name="controlFactory">The control factory that this control will use to create a button</param> public WizardControlVWG(IWizardController wizardController, IControlFactory controlFactory) { if (wizardController == null) { throw new ArgumentNullException("wizardController"); } if (controlFactory == null) { throw new ArgumentNullException("controlFactory"); } _wizardController = wizardController; _controlFactory = controlFactory; _wizardControlManager = new WizardControlManager(this); IPanel buttonPanel = CreateButtonPanel(); _wizardStepPanel = _controlFactory.CreatePanel(); BorderLayoutManagerVWG borderLayoutManager = new BorderLayoutManagerVWG(this, _controlFactory); borderLayoutManager.AddControl(_wizardStepPanel, BorderLayoutManager.Position.Centre); borderLayoutManager.AddControl(buttonPanel, BorderLayoutManager.Position.South); }
protected void StartWizard(Controller controller, bool redirect) { ResetSteps(controller); IWizardController wizardController = controller as IWizardController; IRailsEngineContext context = controller.Context; IList stepList = (IList)context.UnderlyingContext.Items["wizard.step.list"]; String firstStep = (String)stepList[0]; String wizardName = WizardUtils.ConstructWizardNamespace(controller); context.Session[wizardName + "currentstepindex"] = 0; context.Session[wizardName + "currentstep"] = firstStep; wizardController.OnWizardStart(); if (redirect) { context.Response.Redirect(controller.Name, firstStep); } }
public bool MapIntermediateClass(TableNode tn) { // IntermediateClass ic = new IntermediateClass(); // IntermediateClassNode icn = new IntermediateClassNode(ic, tn); IList tableNodes = new ArrayList(); foreach (TableNode tnode in databaseNode.TableNodes) { if (tn.Text == tnode.Text) { continue; } if (tnode.Table.MappingType == TableMappingType.MappedAsClass) { tableNodes.Add(tnode); } } IntermediateClassWizardModel model = new IntermediateClassWizardModel(tn, tableNodes); IWizardController controller = ApplicationController.wizardControllerFactory.Create ("IntermediateClassWizController", "IntClassWiz", "Intermediate Class Wizard"); //controller.FrameSize = new Size(544, 500); model[0].RelationDirection = RelationDirection.Bidirectional; model[1].RelationDirection = RelationDirection.Bidirectional; DialogResult r = controller.Run(model); if (r == DialogResult.OK) { DatabaseNode parent = (DatabaseNode)tn.Parent; // Nothing to remove, because we use the original table node // tn.Remove(); // tn.Parent.Nodes.Add(icn); for (int i = 0; i < 2; i++) { ColumnNode columnNode = (ColumnNode)tn.FindNode(model[i].ForeignKeyColumnName, typeof(ColumnNode)); FkRelation fkr = new FkRelation(columnNode.Text); IntermediateClassInfo intermClInfo = model[i]; fkr.FieldName = intermClInfo.OwnFieldName; fkr.ForeignCodingStyle = intermClInfo.CodingStyle; fkr.ForeignFieldName = intermClInfo.ForeignFieldName; fkr.ForeignIsComposite = false; fkr.IsComposite = false; fkr.OwningTable = tn.Text; fkr.OwningType = tn.Table.ClassName; fkr.RelatedTable = intermClInfo.Table; fkr.RelatedType = intermClInfo.Type; fkr.RelationDirection = intermClInfo.RelationDirection; fkr.RelationName = string.Empty; //ForeignFkRelation ffkr = fkr.ForeignRelation; RelationNode relationNode = new RelationNode(fkr, tn); relationNode.RelatedTableNode = (TableNode)databaseNode.FindNode(intermClInfo.Table); ForeignKeyWizModel fkwizModel = new ForeignKeyWizModel(relationNode, new ArrayList()); tn.DualKeyRelations[i] = intermClInfo.OwnFieldName; MakeForeignKeyRelation(relationNode, columnNode, fkwizModel); } return(true); } return(false); }
public void MapIntermediateTable(TableNode tn) { IntermediateTable it = new IntermediateTable(tn.Text); IntermediateTableNode itn = new IntermediateTableNode(it, tn); IList tableNodes = databaseNode.TableNodes; tableNodes.Remove(tn); IntermediateTableWizardModel model = new IntermediateTableWizardModel(itn, tableNodes); IWizardController controller = ApplicationController.wizardControllerFactory.Create ("IntermediateTableWizController", "IntTblWiz", "Intermediate Table Wizard"); //controller.FrameSize = new Size(544, 416); DialogResult r = controller.Run(model); if (r == DialogResult.OK) { DatabaseNode parent = (DatabaseNode)tn.Parent; //tn.Parent.Nodes. Remove(tn); int index = parent.Nodes.IndexOf(tn); tn.Remove(); tn.Parent.Nodes.Insert(index, itn); itn.TreeView.SelectedNode = itn; itn.Nodes.Add(tn); // This ensures persisting the column nodes with file/save. RelatedTableInfo rti0 = it[0]; RelatedTableInfo rti1 = it[1]; TableNode relTn0 = null; TableNode relTn1 = null; RelationNode relNode0 = null; RelationNode relNode1 = null; foreach (TableNode loopTn in tableNodes) { if (loopTn.Text == rti0.Table) { relTn0 = loopTn; if (rti0.RelationDirection != RelationDirection.DirectedToMe) { ForeignIntermediateTableRelation fitr = new ForeignIntermediateTableRelation(rti0, tn.Text); relNode0 = new RelationNode(fitr, relTn0); relTn0.Nodes.Add(relNode0); } } if (loopTn.Text == rti1.Table) { relTn1 = loopTn; if (rti1.RelationDirection != RelationDirection.DirectedToMe) { ForeignIntermediateTableRelation fitr = new ForeignIntermediateTableRelation(rti1, tn.Text); relNode1 = new RelationNode(fitr, relTn1); relTn1.Nodes.Add(relNode1); } } } if (relNode0 != null) { relNode0.RelatedTableNode = relTn1; } if (relNode1 != null) { relNode1.RelatedTableNode = relTn0; } } }
public void IncludeActions(Controller controller) { IRailsEngineContext context = controller.Context; IWizardController wizardController = controller as IWizardController; if (wizardController == null) { throw new RailsException("The controller {0} must implement the interface " + "IWizardController to be used as a wizard", controller.Name); } steps = wizardController.GetSteps(controller.Context); if (steps == null || steps.Length == 0) { throw new RailsException("The controller {0} returned no WizardStepPage", controller.Name); } IList stepList = new ArrayList(); controller.DynamicActions["start"] = this; urlInfo = controller.Context.UrlInfo; rawAction = urlInfo.Action; requestedAction = ObtainRequestedAction(rawAction, out innerAction); foreach (WizardStepPage step in steps) { String actionName = step.ActionName; if (String.Compare(requestedAction, actionName, true) == 0) { currentStepInstance = step; if (innerAction != null) { // If there's an inner action, we invoke it as a step too controller.DynamicActions[rawAction] = new DelegateDynamicAction(new ActionDelegate(OnStepActionRequested)); } } controller.DynamicActions[actionName] = new DelegateDynamicAction(new ActionDelegate(OnStepActionRequested)); stepList.Add(actionName); step.Initialize(controller); } context.UnderlyingContext.Items["wizard.step.list"] = stepList; if (currentStepInstance != null && !HasRequiredSessionData(controller)) { StartWizard(controller, false); } SetUpWizardHelper(controller); SetUpWizardHelper(currentStepInstance); }
public void OnNavigatingTo(NavigationParameters parameters) { _wizardController = parameters.GetValue <IWizardController>("IWizardController"); _pageNumber = parameters.GetValue <int>("PageNumber"); }
/// <summary> /// Initialises the WizardForm, sets the controller and starts the wizard. /// </summary> /// <param name="controller">the wizrd controller that controls moving the wizard steps and the </param> public WizardFormVWG(IWizardController controller) : this(controller, GlobalUIRegistry.ControlFactory) { }
/// <summary> /// A convenience method to show a wizard using a particular title and wizard controller /// </summary> /// <param name="title">The title of the wizard, displayed in the title bar of the form</param> /// <param name="wizardController">The wizard controller</param> /// <param name="controlFactory">the factory used to create the controls on the wizard</param> public static void Show(string title, IWizardController wizardController, IControlFactory controlFactory) { Show(title, wizardController, false, controlFactory); }
/// <summary> /// A convenience method to show a wizard using a particular title and wizard controller in a dialog /// </summary> /// <param name="title">The title of the wizard, displayed in the title bar of the form</param> /// <param name="wizardController">The wizard controller</param> /// <param name="controlFactory">the factory used to create the controls on the wizard</param> public static bool ShowDialog(string title, IWizardController wizardController, IControlFactory controlFactory) { return Show(title, wizardController, true, controlFactory); }
/// <summary> /// A convenience method to show a wizard using a particular title and wizard controller in a dialog /// </summary> /// <param name="title">The title of the wizard, displayed in the title bar of the form</param> /// <param name="wizardController">The wizard controller</param> /// <param name="controlFactory">the factory used to create the controls on the wizard</param> public static bool ShowDialog(string title, IWizardController wizardController, IControlFactory controlFactory) { return(Show(title, wizardController, true, controlFactory)); }
private static bool Show(string title, IWizardController wizardController, bool showDialog, IControlFactory controlFactory) { WizardFormVWG form = new WizardFormVWG(wizardController, controlFactory); form.Text = title; form.StartPosition = FormStartPosition.CenterParent; if (showDialog) { return form.ShowDialog() == (Gizmox.WebGUI.Forms.DialogResult)Base.DialogResult.OK; } form.Show(); return true; }