123456789101112131415161718192021222324252627282930313233343536373839 |
- using System.Collections.Generic;
- using System.Linq;
- using Comal.Classes;
- using InABox.Core;
- using InABox.DynamicGrid;
- namespace PRSDesktop.Grids
- {
- public class ProductDimensionUnitGrid : DynamicDataGrid<ProductDimensionUnit>
- {
- protected override void DoValidate(ProductDimensionUnit[] items, List<string> errors)
- {
- base.DoValidate(items, errors);
- foreach (var item in items)
- item.Validate(errors);
- }
- protected override void CustomiseEditor(ProductDimensionUnit[] items, DynamicGridColumn column, BaseEditor editor)
- {
- base.CustomiseEditor(items, column, editor);
- if (column.ColumnName == nameof(ProductDimensionUnit.Conversion) && editor is ScriptEditor scriptEditor)
- {
- scriptEditor.Type = ScriptEditorType.TemplateEditor;
- scriptEditor.OnEditorClicked += () =>
- {
- var script = items.FirstOrDefault()?.Conversion.NotWhiteSpaceOr()
- ?? DimensionUnit.DefaultConvertDimensionsScript();
- var editor = new ScriptEditorWindow(script, SyntaxLanguage.CSharp);
- if (editor.ShowDialog() == true)
- {
- foreach (var item in items)
- SetEditorValue(item, column.ColumnName, editor.Script);
- }
- };
- }
- }
- }
- }
|