123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- using Comal.Classes;
- using InABox.Configuration;
- using InABox.Core;
- using InABox.DynamicGrid;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace PRSDesktop;
- public class DigitalFormRoleCrossTab : DynamicManyToManyCrossTab<RoleForm, DigitalForm, Role>
- {
- public DynamicGridFilterButtonComponent<DigitalForm> DigitalFormFilter { get; init; }
- public DynamicGridFilterButtonComponent<Role> RoleFilter { get; init; }
- public DigitalFormRoleCrossTab()
- {
- DigitalFormFilter = new(this,
- new GlobalConfiguration<CoreFilterDefinitions>(nameof(DigitalForm)),
- new UserConfiguration<CoreFilterDefinitions>(nameof(DigitalForm))) { ButtonText = "Digital Forms" };
- RoleFilter = new(this,
- new GlobalConfiguration<CoreFilterDefinitions>(nameof(Role)),
- new UserConfiguration<CoreFilterDefinitions>(nameof(Role))) { ButtonText = "Roles" };
- DigitalFormFilter.OnFilterRefresh += () => Refresh(false, true);
- RoleFilter.OnFilterRefresh += () => Refresh(true, true);
- }
- protected override Filter<DigitalForm>? RowFilter()
- {
- return DigitalFormFilter.GetFilter();
- }
- protected override Filter<Role>? ColumnFilter()
- {
- return RoleFilter.GetFilter();
- }
- protected override Columns<Role>? LoadColumnColumns()
- {
- return Columns.None<Role>().Add(x => x.Code);
- }
- protected override string FormatColumnHeader(CoreRow row)
- {
- return row.Get<Role, string>(x => x.Code);
- }
- protected override SortOrder<Role>? LoadColumnSort()
- {
- return null;
- }
- protected override DynamicGridColumns LoadRowColumns()
- {
- var columns = new DynamicGridColumns();
- columns.Add<DigitalForm>(x => x.Code, 100, "Code", "", Alignment.MiddleLeft);
- columns.Add<DigitalForm>(x => x.Description, 100, "Description", "", Alignment.MiddleLeft);
- return columns;
- }
- }
|