//cloneSubModuleButton_click private void cloneSubModuleButton_click(object sender, RoutedEventArgs e) { if (_currentModule == null) { return; } //we get the selected item subModuleDefinition subModule = null; if (gridModuleActivities.SelectedItem == null) { return; } subModule = gridModuleActivities.SelectedItem as subModuleDefinition; //clone var cloned = cloneItem(subModule); //change a few things var rnd = new Random(DateTime.Now.Millisecond); cloned.id = Guid.NewGuid().ToString("N"); var rint = rnd.Next(9999, 99999); cloned.name = cloned.name + "-" + rint; cloned.name = cloned.prefix + "-" + rint; //add to module _currentModule.subModules.Add(cloned); //we refresh the view updateActivitiesList(_currentModule.subModules); }
private void renumberFields(subModuleDefinition actvity) { for (var i = 0; i < actvity.moduleFields.Count; i++) { actvity.moduleFields[i].position = i + 1; } }
void clearSubModuleEditor() { var blank = new subModuleDefinition() { moduleFields = new List <fieldProperties>() }; updateSubModuleEditor(blank); updateFieldPropertiesList(blank); clearFieldEditor(); clearGroupPanel(); }
private void updateFieldPropertiesList(subModuleDefinition module) { //sort if (module.moduleFields != null) { sortFields(module.moduleFields); } //gridActivityFields labelActivityName.Content = "Currently editing - " + module.name; module.moduleFields = module.moduleFields ?? new List <fieldProperties>(); gridActivityFields.ItemsSource = ""; gridActivityFields.ItemsSource = module.moduleFields; }
void updateSubModuleEditor(subModuleDefinition module) { setValue(textSubModuleId, module.id); setValue(textSubModuleName, module.name); setValue(textSubModulePrefix, module.prefix); setValue(textSubModuleVersion, module.version); setValue(textSubModuleDescription, module.description); //bind activities list updateFieldPropertiesList(module); clearFieldEditor(); clearGroupPanel(); stackFieldAttributes.Visibility = Visibility.Visible; stackGroupAttributes.Visibility = Visibility.Collapsed; }
private void saveSubModuleChangesButton_click(object sender, RoutedEventArgs e) { //we read the field values and clear the form if (_currentModule == null) { showDialog("Please select a module first"); return; } if (_currentModule.subModules == null) { _currentModule.subModules = new List <subModuleDefinition>(); } //we get all the values var subModuleId = getValue(textSubModuleId); var validationRes = textRequiredValidationRules.ValidateControl(textSubModuleName); if (!validationRes.IsValid) { return; } var subModuleName = textRequiredValidationRules.getValue(textSubModuleName); validationRes = textRequiredValidationRules.ValidateControl(textSubModulePrefix); if (!validationRes.IsValid) { return; } var subModulePrefix = textRequiredValidationRules.getValue(textSubModulePrefix); var subModuleDescription = getValue(textSubModuleDescription); validationRes = textRequiredValidationRules.ValidateControl(textSubModuleVersion); if (!validationRes.IsValid) { return; } var subModuleVersion = textRequiredValidationRules.getValue(textSubModuleVersion); // var subModuleVersion = getValue(textSubModuleVersion); //check if this activity exist by id subModuleDefinition activity = null; if (!string.IsNullOrWhiteSpace(subModuleId)) { activity = _currentModule.subModules .FirstOrDefault(mod => mod.id == subModuleId); } //add if it doesn't exist if (activity == null) { activity = new subModuleDefinition() { id = Guid.NewGuid().ToString("N"), moduleFields = new List <fieldProperties>() }; _currentModule.subModules.Add(activity); setValue(textSubModuleId, activity.id); } //activity.id = subModuleId; activity.name = subModuleName; activity.prefix = subModulePrefix; activity.description = subModuleDescription; activity.version = subModuleVersion; //refresh the activities list updateActivitiesList(_currentModule.subModules); }