Free cookie consent management tool by TermsFeed Policy Generator

source: branches/2521_ProblemRefactoring/HeuristicLab.Problems.Scheduling.Views/3.3/JobShopSchedulingProblemView.cs @ 16654

Last change on this file since 16654 was 13443, checked in by mkommend, 9 years ago

#2521: Adapted decoders for SchedulingProblem.

File size: 4.7 KB
Line 
1//#region License Information
2///* HeuristicLab
3// * Copyright (C) 2002-2015 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
4// *
5// * This file is part of HeuristicLab.
6// *
7// * HeuristicLab is free software: you can redistribute it and/or modify
8// * it under the terms of the GNU General Public License as published by
9// * the Free Software Foundation, either version 3 of the License, or
10// * (at your option) any later version.
11// *
12// * HeuristicLab is distributed in the hope that it will be useful,
13// * but WITHOUT ANY WARRANTY; without even the implied warranty of
14// * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15// * GNU General Public License for more details.
16// *
17// * You should have received a copy of the GNU General Public License
18// * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
19// */
20//#endregion
21
22//using System;
23//using System.Windows.Forms;
24//using HeuristicLab.Collections;
25//using HeuristicLab.Encodings.ScheduleEncoding;
26//using HeuristicLab.MainForm;
27//using HeuristicLab.Optimization.Views;
28
29//namespace HeuristicLab.Problems.Scheduling.Views {
30//  [View("JobShop Scheduling Problem View")]
31//  [Content(typeof(JobShopSchedulingProblem), true)]
32//  public partial class JobShopSchedulingProblemView : ProblemView {
33
34//    public new JobShopSchedulingProblem Content {
35//      get { return (JobShopSchedulingProblem)base.Content; }
36//      set { base.Content = value; }
37//    }
38
39//    public JobShopSchedulingProblemView() {
40//      InitializeComponent();
41//      Controls.Remove(parameterCollectionView);
42//      parameterCollectionView.Dock = DockStyle.Fill;
43//      problemTabPage.Controls.Add(parameterCollectionView);
44//    }
45
46//    protected override void OnContentChanged() {
47//      base.OnContentChanged();
48//      FillGanttChart();
49//    }
50
51//    protected override void DeregisterContentEvents() {
52//      Content.JobDataParameter.ValueChanged -= JobDataParameterOnValueChanged;
53//      Content.JobData.ItemsAdded -= JobsOnChanged;
54//      Content.JobData.ItemsRemoved -= JobsOnRemoved;
55//      Content.JobData.ItemsReplaced -= JobsOnChanged;
56//      Content.JobData.CollectionReset -= JobsOnChanged;
57//      foreach (var job in Content.JobData) {
58//        job.TasksChanged -= JobOnTasksChanged;
59//      }
60//      base.DeregisterContentEvents();
61//    }
62//    protected override void RegisterContentEvents() {
63//      base.RegisterContentEvents();
64//      Content.JobDataParameter.ValueChanged += JobDataParameterOnValueChanged;
65//      Content.JobData.ItemsAdded += JobsOnChanged;
66//      Content.JobData.ItemsRemoved += JobsOnRemoved;
67//      Content.JobData.ItemsReplaced += JobsOnChanged;
68//      Content.JobData.CollectionReset += JobsOnChanged;
69//      foreach (var job in Content.JobData) {
70//        job.TasksChanged += JobOnTasksChanged;
71//      }
72//    }
73
74//    private void JobsOnChanged(object sender, CollectionItemsChangedEventArgs<IndexedItem<Job>> e) {
75//      foreach (var job in e.OldItems)
76//        job.Value.TasksChanged -= JobOnTasksChanged;
77//      foreach (var job in e.Items)
78//        job.Value.TasksChanged += JobOnTasksChanged;
79//      FillGanttChart();
80//    }
81
82//    private void JobsOnRemoved(object sender, CollectionItemsChangedEventArgs<IndexedItem<Job>> e) {
83//      foreach (var job in e.Items)
84//        job.Value.TasksChanged -= JobOnTasksChanged;
85//      FillGanttChart();
86//    }
87
88//    private void JobDataParameterOnValueChanged(object sender, EventArgs e) {
89//      Content.JobData.ItemsAdded += JobsOnChanged;
90//      Content.JobData.ItemsRemoved += JobsOnRemoved;
91//      Content.JobData.ItemsReplaced += JobsOnChanged;
92//      Content.JobData.CollectionReset += JobsOnChanged;
93//      foreach (var job in Content.JobData) {
94//        job.TasksChanged += JobOnTasksChanged;
95//      }
96//      FillGanttChart();
97//    }
98
99//    private void JobOnTasksChanged(object sender, EventArgs e) {
100//      FillGanttChart();
101//    }
102
103//    private void FillGanttChart() {
104//      ganttChart.Reset();
105//      if (Content == null) return;
106//      int jobCount = 0;
107//      foreach (var j in Content.JobData) {
108//        double lastEndTime = 0;
109//        foreach (var t in Content.JobData[jobCount].Tasks) {
110//          int categoryNr = t.JobNr;
111//          string categoryName = "Job" + categoryNr;
112//          ganttChart.AddData(categoryName,
113//            categoryNr,
114//            t.TaskNr,
115//            lastEndTime + 1,
116//            lastEndTime + t.Duration,
117//            "Job" + t.JobNr + " - " + "Task#" + t.TaskNr);
118//          lastEndTime += t.Duration;
119//        }
120//        jobCount++;
121//      }
122//    }
123//  }
124//}
Note: See TracBrowser for help on using the repository browser.