public void ConvertShouldReturnNullIfFieldIsNull() { var converter = new ProcessViewFieldCustomConfigEditorConverter { IsInitialized = true }; var vm = new ProcessViewFieldViewModel(null, null); Assert.IsNull(converter.Convert(vm, null, null, null)); }
public void ConvertShouldReturnNullIfTemplateFieldIsNotFound() { var converter = new ProcessViewFieldCustomConfigEditorConverter { IsInitialized = true, ProcessViewManager = new ProcessViewManager { ProcessViewsFactory = new[] { new Lazy<IProcessViewTemplate, IExportAsProcessViewTemplateAttributeMetadata>(() => new DataCollectProcessViewTemplate(), null), new Lazy<IProcessViewTemplate, IExportAsProcessViewTemplateAttributeMetadata>(() => new APQPProcessViewTemplate(), null), new Lazy<IProcessViewTemplate, IExportAsProcessViewTemplateAttributeMetadata>(() => new DocumentProcessViewTemplate(), null), } } }; var vm = new ProcessViewFieldViewModel(new ProcessViewFieldEdit { TemplateFieldGuid = Guid.Empty }, null); Assert.IsNull(converter.Convert(vm, null, null, null)); }
public void ConvertShouldReturnNullIfTemplateFieldCustomConfiguratorIsNull() { var dataCollectionTemplate = new DataCollectProcessViewTemplate(); var converter = new ProcessViewFieldCustomConfigEditorConverter { IsInitialized = true, ProcessViewManager = new ProcessViewManager { ProcessViewsFactory = new[] { new Lazy<IProcessViewTemplate, IExportAsProcessViewTemplateAttributeMetadata>(() => dataCollectionTemplate, null), new Lazy<IProcessViewTemplate, IExportAsProcessViewTemplateAttributeMetadata>(() => new APQPProcessViewTemplate(), null), new Lazy<IProcessViewTemplate, IExportAsProcessViewTemplateAttributeMetadata>(() => new DocumentProcessViewTemplate(), null), } } }; var checkListField = dataCollectionTemplate.Sections.SelectMany(s => s.Fields).FirstOrDefault(f => f.Guid == DataCollectProcessViewTemplate.ChecklistFieldGuid); Mock.Arrange(() => checkListField.CustomConfigurator).Returns((IProcessViewFieldCustomConfigurator)null); var vm = new ProcessViewFieldViewModel(new ProcessViewFieldEdit { TemplateFieldGuid = DataCollectProcessViewTemplate.ChecklistFieldGuid }, null); Assert.IsNull(converter.Convert(vm, null, null, null)); }
public void ConvertShouldReturnTemplateFieldCustomConfigurator() { var dataCollectionTemplate = new DataCollectProcessViewTemplate(); var converter = new ProcessViewFieldCustomConfigEditorConverter { IsInitialized = true, ProcessViewManager = new ProcessViewManager { ProcessViewsFactory = new[] { new Lazy<IProcessViewTemplate, IExportAsProcessViewTemplateAttributeMetadata>(() => dataCollectionTemplate, null), new Lazy<IProcessViewTemplate, IExportAsProcessViewTemplateAttributeMetadata>(() => new APQPProcessViewTemplate(), null), new Lazy<IProcessViewTemplate, IExportAsProcessViewTemplateAttributeMetadata>(() => new DocumentProcessViewTemplate(), null), } }, FieldConfigurators = new[] { new Lazy<IProcessViewFieldCustomConfigViewModel, IExportAsProcessViewFieldCustomConfigViewModelAttributeMetadata>(Mock.Create<IProcessViewFieldCustomConfigViewModel>, new ExportAsProcessViewFieldCustomConfigViewModelAttribute(typeof(DataCollectProcessViewChecklistFieldConfigurator))), } }; var vm = new ProcessViewFieldViewModel(new ProcessViewFieldEdit { TemplateFieldGuid = DataCollectProcessViewTemplate.ChecklistFieldGuid }, null); Assert.IsNotNull(converter.Convert(vm, null, null, null)); }
/// <summary> /// Determines whether this instance [can execute change field icon] the specified object. /// </summary> /// <param name="obj">The object.</param> /// <returns><c>true</c> if this instance [can execute change field icon] the specified object; otherwise, <c>false</c>.</returns> private bool CanExecuteChangeFieldIcon(ProcessViewFieldViewModel obj) { var setcionTemplate = SelectedSectionTemplate; return setcionTemplate != null && !setcionTemplate.IsFieldSetFixed && obj != null && obj.Model.ShowIcon && AllowAddRemoveObjects; }
/// <summary> /// Executes the change field icon. /// </summary> /// <param name="obj">The object.</param> private void ExecuteChangeFieldIcon(ProcessViewFieldViewModel obj) { var iconListViewModel = IconListFactory.CreateExport().Value; iconListViewModel.LoadIcons(); if (obj.Model.IconId.HasValue) { iconListViewModel.SelectedIconId = obj.Model.IconId.Value; } ThePopupFactory.Value.Popup() .SetCaption(LanguageService.Translate("Msg_SelectIcon")) .SetPosition(PopupPosition.Center) .SetCustomViewModel(iconListViewModel) .SetIsModal(true) .Show(() => { obj.Model.IconId = iconListViewModel.SelectedIconId; }); }
/// <summary> /// Executes the remove section field. /// </summary> /// <param name="obj">The object.</param> private void ExecuteRemoveSectionField(ProcessViewFieldViewModel obj) { SelectedSection.Model.FieldList.Remove(obj.Model); SelectedSection.Fields.Remove(obj); }
/// <summary> /// Determines whether this instance [can execute remove section field] the specified object. /// </summary> /// <param name="obj">The object.</param> /// <returns><c>true</c> if this instance [can execute remove section field] the specified object; otherwise, <c>false</c>.</returns> private bool CanExecuteRemoveSectionField(ProcessViewFieldViewModel obj) { var sectionTemplate = SelectedSectionTemplate; return sectionTemplate != null && !sectionTemplate.IsFieldSetFixed && obj != null && AllowAddRemoveObjects; }
/// <summary> /// Executes the add section field. /// </summary> /// <param name="obj">The object.</param> private void ExecuteAddSectionField(object obj) { var item = ProcessViewFieldEdit.NewItem(); item.DisplayOrder = SelectedSection.Model.FieldList.DefaultIfEmpty().Max(f => f == null ? 0.0 : f.DisplayOrder) + 1.0; SelectedSection.Model.FieldList.Add(item); var fieldViewModel = new ProcessViewFieldViewModel(item, SelectedSection); SelectedSection.Fields.Add(fieldViewModel); }
/// <summary> /// Handles the <see cref="E:ModelChildChanged" /> event. /// </summary> /// <param name="viewModel">The view model.</param> /// <param name="sender">The sender.</param> /// <param name="e">The <see cref="ChildChangedEventArgs"/> instance containing the event data.</param> private static void OnModelChildChanged(ProcessViewFieldViewModel viewModel, object sender, ChildChangedEventArgs e) { if (e.ChildObject is FieldEdit || e.ChildObject is FieldList || e.ChildObject is ProcessSections || e.ChildObject is SectionEdit) { viewModel.RaisePropertyChanged(() => viewModel.AvailableFields); } }
/// <summary> /// Sets the model. /// </summary> /// <param name="model">The model.</param> private void SetModel(ProcessViewSectionEdit model) { Model = model; if (ProcessViewManager != null) Model.ShowFieldList = ProcessViewManager.ShowFields(Model.TemplateSectionGuid); Fields.Clear(); if (Model != null) { foreach (var field in Model.FieldList) { var viewModel = new ProcessViewFieldViewModel(field, this); Fields.Add(viewModel); } foreach (var stepEdit in Model.StepList) { var stepVmExport = StepViewModels.FirstOrDefault(vm => vm.Metadata.StepType == stepEdit.GetType()); if (stepVmExport != null) { var stepVm = stepVmExport.CreateExport().Value; stepVm.Init(stepEdit, this); Steps.Add(stepVm); } } } }