|
|
@@ -12,44 +12,22 @@ using InABox.Wpf;
|
|
|
namespace PRSDesktop
|
|
|
{
|
|
|
|
|
|
- public enum JobDesignsView
|
|
|
- {
|
|
|
- Unapproved,
|
|
|
- Approved
|
|
|
- }
|
|
|
-
|
|
|
- public class JobDesignSettings : IUserConfigurationSettings
|
|
|
- {
|
|
|
- public JobDesignsView View { get; set; }
|
|
|
- }
|
|
|
-
|
|
|
/// <summary>
|
|
|
/// Interaction logic for JobDesigns.xaml
|
|
|
/// </summary>
|
|
|
public partial class JobDesignPanel : UserControl, IPanel<Setout>, IMasterDetailControl<Job>
|
|
|
{
|
|
|
-
|
|
|
- private JobDesignSettings _settings;
|
|
|
-
|
|
|
public JobDesignPanel()
|
|
|
{
|
|
|
- _settings = new UserConfiguration<JobDesignSettings>().Load();
|
|
|
InitializeComponent();
|
|
|
- DesignsTabControl.SelectedItem = _settings.View == JobDesignsView.Unapproved
|
|
|
- ? UnapprovedTabItem
|
|
|
- : ApprovedTabItem;
|
|
|
- DesignsTabControl.SelectionChanged += DesignsTabControl_OnSelectionChanged;
|
|
|
- Designs.OnSelectItem += Designs_OnSelectItem;
|
|
|
-
|
|
|
}
|
|
|
|
|
|
public Job? Master
|
|
|
{
|
|
|
- get => Designs.Master;
|
|
|
+ get => UnapprovedDesigns.Job;
|
|
|
set
|
|
|
{
|
|
|
UnapprovedDesigns.Job = value;
|
|
|
- Designs.Master = value;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -59,26 +37,19 @@ namespace PRSDesktop
|
|
|
|
|
|
public void CreateToolbarButtons(IPanelHost host)
|
|
|
{
|
|
|
- if (DesignsTabControl.SelectedTab == UnapprovedTabItem)
|
|
|
- {
|
|
|
- StagingPanel.SetoutsConfigurationSettings(host, () => new GlobalConfiguration<StagingPanellSettings>().Load());
|
|
|
- }
|
|
|
+ StagingPanel.SetoutsConfigurationSettings(host, () => new GlobalConfiguration<StagingPanellSettings>().Load());
|
|
|
}
|
|
|
|
|
|
public string SectionName => "Job Designs";
|
|
|
|
|
|
public DataModel DataModel(Selection selection)
|
|
|
{
|
|
|
- var ids = Designs.ExtractValues(c => c.ID, selection).ToArray();
|
|
|
- return new BaseDataModel<Setout>(Filter<Setout>.Where(x => x.ID).InList(ids));
|
|
|
+ return UnapprovedDesigns.DataModel(selection);
|
|
|
}
|
|
|
|
|
|
public void Refresh()
|
|
|
{
|
|
|
- if (DesignsTabControl.SelectedTab == UnapprovedTabItem)
|
|
|
- UnapprovedDesigns.Refresh();
|
|
|
- else
|
|
|
- Designs.Refresh(false, true);
|
|
|
+ UnapprovedDesigns.Refresh();
|
|
|
}
|
|
|
|
|
|
public Dictionary<string, object[]> Selected()
|
|
|
@@ -88,22 +59,7 @@ namespace PRSDesktop
|
|
|
|
|
|
public void Setup()
|
|
|
{
|
|
|
- //DesignsTabControl.SelectedItem = ParentSettings
|
|
|
UnapprovedDesigns.Setup();
|
|
|
- Designs.Refresh(true, false);
|
|
|
- Documents.Refresh(true, false);
|
|
|
- Packets.Refresh(true, false);
|
|
|
- }
|
|
|
-
|
|
|
- private void DesignsTabControl_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
|
|
|
- {
|
|
|
- if (e.Source == e.OriginalSource)
|
|
|
- {
|
|
|
- _settings.View = DesignsTabControl.SelectedItem == UnapprovedTabItem ? JobDesignsView.Unapproved : JobDesignsView.Approved;
|
|
|
- new UserConfiguration<JobDesignSettings>().Save(_settings);
|
|
|
- Refresh();
|
|
|
- OnUpdateDataModel?.Invoke(SectionName, DataModel(Selection.None));
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
public void Shutdown(CancelEventArgs? cancel)
|
|
|
@@ -113,19 +69,5 @@ namespace PRSDesktop
|
|
|
public void Heartbeat(TimeSpan time)
|
|
|
{
|
|
|
}
|
|
|
-
|
|
|
- private void Designs_OnSelectItem(object sender, DynamicGridSelectionEventArgs e)
|
|
|
- {
|
|
|
- var design = e.Rows?.FirstOrDefault()?.ToObject<Setout>();
|
|
|
-
|
|
|
- Documents.Design = design;
|
|
|
- Documents.Refresh(true, true);
|
|
|
-
|
|
|
- Packets.Master = Master;
|
|
|
- Packets.Design = design;
|
|
|
- Packets.Refresh(true, true);
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
}
|
|
|
}
|