Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
12/08/15 14:31:05 (8 years ago)
Author:
mkommend
Message:

#2521: Adapted decoders for SchedulingProblem.

Location:
branches/ProblemRefactoring/HeuristicLab.Problems.Scheduling.Views/3.3
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/ProblemRefactoring/HeuristicLab.Problems.Scheduling.Views/3.3/JSMDecodingErrorPolicyView.cs

    r12012 r13443  
    2323using System.Windows.Forms;
    2424using HeuristicLab.Core.Views;
     25using HeuristicLab.Encodings.ScheduleEncoding;
    2526using HeuristicLab.MainForm;
    2627
  • branches/ProblemRefactoring/HeuristicLab.Problems.Scheduling.Views/3.3/JSMForcingStrategyView.cs

    r12012 r13443  
    2323using System.Windows.Forms;
    2424using HeuristicLab.Core.Views;
     25using HeuristicLab.Encodings.ScheduleEncoding;
    2526using HeuristicLab.MainForm;
    2627
  • branches/ProblemRefactoring/HeuristicLab.Problems.Scheduling.Views/3.3/JobShopSchedulingProblemView.Designer.cs

    r12012 r13443  
    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
     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
    2121
    22 using HeuristicLab.Encodings.ScheduleEncoding.Views;
    23 namespace HeuristicLab.Problems.Scheduling.Views {
    24   partial class JobShopSchedulingProblemView {
    25     /// <summary>
    26     /// Required designer variable.
    27     /// </summary>
    28     private System.ComponentModel.IContainer components = null;
     22//using HeuristicLab.Encodings.ScheduleEncoding.Views;
     23//namespace HeuristicLab.Problems.Scheduling.Views {
     24//  partial class JobShopSchedulingProblemView {
     25//    /// <summary>
     26//    /// Required designer variable.
     27//    /// </summary>
     28//    private System.ComponentModel.IContainer components = null;
    2929
    30     /// <summary>
    31     /// Clean up any resources being used.
    32     /// </summary>
    33     /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
    34     protected override void Dispose(bool disposing) {
    35       if (disposing && (components != null)) {
    36         components.Dispose();
    37       }
    38       base.Dispose(disposing);
    39     }
     30//    /// <summary>
     31//    /// Clean up any resources being used.
     32//    /// </summary>
     33//    /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
     34//    protected override void Dispose(bool disposing) {
     35//      if (disposing && (components != null)) {
     36//        components.Dispose();
     37//      }
     38//      base.Dispose(disposing);
     39//    }
    4040
    41     #region Component Designer generated code
     41//    #region Component Designer generated code
    4242
    43     /// <summary>
    44     /// Required method for Designer support - do not modify
    45     /// the contents of this method with the code editor.
    46     /// </summary>
    47     private void InitializeComponent() {
    48       this.problemTabControl = new System.Windows.Forms.TabControl();
    49       this.problemTabPage = new System.Windows.Forms.TabPage();
    50       this.visualizationTabPage = new System.Windows.Forms.TabPage();
    51       this.ganttChart = new HeuristicLab.Encodings.ScheduleEncoding.Views.GanttChart();
    52       ((System.ComponentModel.ISupportInitialize)(this.problemInstanceSplitContainer)).BeginInit();
    53       this.problemInstanceSplitContainer.Panel1.SuspendLayout();
    54       this.problemInstanceSplitContainer.Panel2.SuspendLayout();
    55       this.problemInstanceSplitContainer.SuspendLayout();
    56       ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).BeginInit();
    57       this.problemTabControl.SuspendLayout();
    58       this.problemTabPage.SuspendLayout();
    59       this.visualizationTabPage.SuspendLayout();
    60       this.SuspendLayout();
    61       //
    62       // problemInstanceSplitContainer.Panel2
    63       //
    64       this.problemInstanceSplitContainer.Panel2.Controls.Add(this.problemTabControl);
    65       //
    66       // parameterCollectionView
    67       //
    68       this.parameterCollectionView.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)));
    69       this.parameterCollectionView.Dock = System.Windows.Forms.DockStyle.Fill;
    70       this.parameterCollectionView.Location = new System.Drawing.Point(3, 3);
    71       this.parameterCollectionView.Size = new System.Drawing.Size(491, 271);
    72       //
    73       // nameTextBox
    74       //
    75       this.errorProvider.SetIconAlignment(this.nameTextBox, System.Windows.Forms.ErrorIconAlignment.MiddleLeft);
    76       this.errorProvider.SetIconPadding(this.nameTextBox, 2);
    77       this.nameTextBox.Size = new System.Drawing.Size(439, 20);
    78       //
    79       // infoLabel
    80       //
    81       this.infoLabel.Location = new System.Drawing.Point(492, 3);
    82       //
    83       // problemTabControl
    84       //
    85       this.problemTabControl.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
    86             | System.Windows.Forms.AnchorStyles.Left)
    87             | System.Windows.Forms.AnchorStyles.Right)));
    88       this.problemTabControl.Controls.Add(this.problemTabPage);
    89       this.problemTabControl.Controls.Add(this.visualizationTabPage);
    90       this.problemTabControl.Location = new System.Drawing.Point(3, 27);
    91       this.problemTabControl.Name = "problemTabControl";
    92       this.problemTabControl.SelectedIndex = 0;
    93       this.problemTabControl.Size = new System.Drawing.Size(505, 303);
    94       this.problemTabControl.TabIndex = 5;
    95       //
    96       // problemTabPage
    97       //
    98       this.problemTabPage.Controls.Add(this.parameterCollectionView);
    99       this.problemTabPage.Location = new System.Drawing.Point(4, 22);
    100       this.problemTabPage.Name = "problemTabPage";
    101       this.problemTabPage.Padding = new System.Windows.Forms.Padding(3);
    102       this.problemTabPage.Size = new System.Drawing.Size(497, 277);
    103       this.problemTabPage.TabIndex = 0;
    104       this.problemTabPage.Text = "Problem";
    105       this.problemTabPage.UseVisualStyleBackColor = true;
    106       //
    107       // visualizationTabPage
    108       //
    109       this.visualizationTabPage.Controls.Add(this.ganttChart);
    110       this.visualizationTabPage.Location = new System.Drawing.Point(4, 22);
    111       this.visualizationTabPage.Name = "visualizationTabPage";
    112       this.visualizationTabPage.Padding = new System.Windows.Forms.Padding(3);
    113       this.visualizationTabPage.Size = new System.Drawing.Size(497, 277);
    114       this.visualizationTabPage.TabIndex = 1;
    115       this.visualizationTabPage.Text = "Visualization";
    116       this.visualizationTabPage.UseVisualStyleBackColor = true;
    117       //
    118       // ganttChart
    119       //
    120       this.ganttChart.Dock = System.Windows.Forms.DockStyle.Fill;
    121       this.ganttChart.Location = new System.Drawing.Point(3, 3);
    122       this.ganttChart.Name = "ganttChart";
    123       this.ganttChart.Size = new System.Drawing.Size(491, 271);
    124       this.ganttChart.TabIndex = 0;
    125       //
    126       // JobShopSchedulingProblemView
    127       //
    128       this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
    129       this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
    130       this.Name = "JobShopSchedulingProblemView";
    131       this.problemInstanceSplitContainer.Panel1.ResumeLayout(false);
    132       this.problemInstanceSplitContainer.Panel2.ResumeLayout(false);
    133       this.problemInstanceSplitContainer.Panel2.PerformLayout();
    134       ((System.ComponentModel.ISupportInitialize)(this.problemInstanceSplitContainer)).EndInit();
    135       this.problemInstanceSplitContainer.ResumeLayout(false);
    136       ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).EndInit();
    137       this.problemTabControl.ResumeLayout(false);
    138       this.problemTabPage.ResumeLayout(false);
    139       this.visualizationTabPage.ResumeLayout(false);
    140       this.ResumeLayout(false);
     43//    /// <summary>
     44//    /// Required method for Designer support - do not modify
     45//    /// the contents of this method with the code editor.
     46//    /// </summary>
     47//    private void InitializeComponent() {
     48//      this.problemTabControl = new System.Windows.Forms.TabControl();
     49//      this.problemTabPage = new System.Windows.Forms.TabPage();
     50//      this.visualizationTabPage = new System.Windows.Forms.TabPage();
     51//      this.ganttChart = new HeuristicLab.Encodings.ScheduleEncoding.Views.GanttChart();
     52//      ((System.ComponentModel.ISupportInitialize)(this.problemInstanceSplitContainer)).BeginInit();
     53//      this.problemInstanceSplitContainer.Panel1.SuspendLayout();
     54//      this.problemInstanceSplitContainer.Panel2.SuspendLayout();
     55//      this.problemInstanceSplitContainer.SuspendLayout();
     56//      ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).BeginInit();
     57//      this.problemTabControl.SuspendLayout();
     58//      this.problemTabPage.SuspendLayout();
     59//      this.visualizationTabPage.SuspendLayout();
     60//      this.SuspendLayout();
     61//      //
     62//      // problemInstanceSplitContainer.Panel2
     63//      //
     64//      this.problemInstanceSplitContainer.Panel2.Controls.Add(this.problemTabControl);
     65//      //
     66//      // parameterCollectionView
     67//      //
     68//      this.parameterCollectionView.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)));
     69//      this.parameterCollectionView.Dock = System.Windows.Forms.DockStyle.Fill;
     70//      this.parameterCollectionView.Location = new System.Drawing.Point(3, 3);
     71//      this.parameterCollectionView.Size = new System.Drawing.Size(491, 271);
     72//      //
     73//      // nameTextBox
     74//      //
     75//      this.errorProvider.SetIconAlignment(this.nameTextBox, System.Windows.Forms.ErrorIconAlignment.MiddleLeft);
     76//      this.errorProvider.SetIconPadding(this.nameTextBox, 2);
     77//      this.nameTextBox.Size = new System.Drawing.Size(439, 20);
     78//      //
     79//      // infoLabel
     80//      //
     81//      this.infoLabel.Location = new System.Drawing.Point(492, 3);
     82//      //
     83//      // problemTabControl
     84//      //
     85//      this.problemTabControl.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
     86//            | System.Windows.Forms.AnchorStyles.Left)
     87//            | System.Windows.Forms.AnchorStyles.Right)));
     88//      this.problemTabControl.Controls.Add(this.problemTabPage);
     89//      this.problemTabControl.Controls.Add(this.visualizationTabPage);
     90//      this.problemTabControl.Location = new System.Drawing.Point(3, 27);
     91//      this.problemTabControl.Name = "problemTabControl";
     92//      this.problemTabControl.SelectedIndex = 0;
     93//      this.problemTabControl.Size = new System.Drawing.Size(505, 303);
     94//      this.problemTabControl.TabIndex = 5;
     95//      //
     96//      // problemTabPage
     97//      //
     98//      this.problemTabPage.Controls.Add(this.parameterCollectionView);
     99//      this.problemTabPage.Location = new System.Drawing.Point(4, 22);
     100//      this.problemTabPage.Name = "problemTabPage";
     101//      this.problemTabPage.Padding = new System.Windows.Forms.Padding(3);
     102//      this.problemTabPage.Size = new System.Drawing.Size(497, 277);
     103//      this.problemTabPage.TabIndex = 0;
     104//      this.problemTabPage.Text = "Problem";
     105//      this.problemTabPage.UseVisualStyleBackColor = true;
     106//      //
     107//      // visualizationTabPage
     108//      //
     109//      this.visualizationTabPage.Controls.Add(this.ganttChart);
     110//      this.visualizationTabPage.Location = new System.Drawing.Point(4, 22);
     111//      this.visualizationTabPage.Name = "visualizationTabPage";
     112//      this.visualizationTabPage.Padding = new System.Windows.Forms.Padding(3);
     113//      this.visualizationTabPage.Size = new System.Drawing.Size(497, 277);
     114//      this.visualizationTabPage.TabIndex = 1;
     115//      this.visualizationTabPage.Text = "Visualization";
     116//      this.visualizationTabPage.UseVisualStyleBackColor = true;
     117//      //
     118//      // ganttChart
     119//      //
     120//      this.ganttChart.Dock = System.Windows.Forms.DockStyle.Fill;
     121//      this.ganttChart.Location = new System.Drawing.Point(3, 3);
     122//      this.ganttChart.Name = "ganttChart";
     123//      this.ganttChart.Size = new System.Drawing.Size(491, 271);
     124//      this.ganttChart.TabIndex = 0;
     125//      //
     126//      // JobShopSchedulingProblemView
     127//      //
     128//      this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
     129//      this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
     130//      this.Name = "JobShopSchedulingProblemView";
     131//      this.problemInstanceSplitContainer.Panel1.ResumeLayout(false);
     132//      this.problemInstanceSplitContainer.Panel2.ResumeLayout(false);
     133//      this.problemInstanceSplitContainer.Panel2.PerformLayout();
     134//      ((System.ComponentModel.ISupportInitialize)(this.problemInstanceSplitContainer)).EndInit();
     135//      this.problemInstanceSplitContainer.ResumeLayout(false);
     136//      ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).EndInit();
     137//      this.problemTabControl.ResumeLayout(false);
     138//      this.problemTabPage.ResumeLayout(false);
     139//      this.visualizationTabPage.ResumeLayout(false);
     140//      this.ResumeLayout(false);
    141141
    142     }
     142//    }
    143143
    144     #endregion
     144//    #endregion
    145145
    146     private System.Windows.Forms.TabControl problemTabControl;
    147     private System.Windows.Forms.TabPage problemTabPage;
    148     private System.Windows.Forms.TabPage visualizationTabPage;
    149     private GanttChart ganttChart;
    150   }
    151 }
     146//    private System.Windows.Forms.TabControl problemTabControl;
     147//    private System.Windows.Forms.TabPage problemTabPage;
     148//    private System.Windows.Forms.TabPage visualizationTabPage;
     149//    private GanttChart ganttChart;
     150//  }
     151//}
  • branches/ProblemRefactoring/HeuristicLab.Problems.Scheduling.Views/3.3/JobShopSchedulingProblemView.cs

    r12012 r13443  
    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
     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
    2121
    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;
     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;
    2828
    29 namespace HeuristicLab.Problems.Scheduling.Views {
    30   [View("JobShop Scheduling Problem View")]
    31   [Content(typeof(JobShopSchedulingProblem), true)]
    32   public partial class JobShopSchedulingProblemView : ProblemView {
     29//namespace HeuristicLab.Problems.Scheduling.Views {
     30//  [View("JobShop Scheduling Problem View")]
     31//  [Content(typeof(JobShopSchedulingProblem), true)]
     32//  public partial class JobShopSchedulingProblemView : ProblemView {
    3333
    34     public new JobShopSchedulingProblem Content {
    35       get { return (JobShopSchedulingProblem)base.Content; }
    36       set { base.Content = value; }
    37     }
     34//    public new JobShopSchedulingProblem Content {
     35//      get { return (JobShopSchedulingProblem)base.Content; }
     36//      set { base.Content = value; }
     37//    }
    3838
    39     public JobShopSchedulingProblemView() {
    40       InitializeComponent();
    41       Controls.Remove(parameterCollectionView);
    42       parameterCollectionView.Dock = DockStyle.Fill;
    43       problemTabPage.Controls.Add(parameterCollectionView);
    44     }
     39//    public JobShopSchedulingProblemView() {
     40//      InitializeComponent();
     41//      Controls.Remove(parameterCollectionView);
     42//      parameterCollectionView.Dock = DockStyle.Fill;
     43//      problemTabPage.Controls.Add(parameterCollectionView);
     44//    }
    4545
    46     protected override void OnContentChanged() {
    47       base.OnContentChanged();
    48       FillGanttChart();
    49     }
     46//    protected override void OnContentChanged() {
     47//      base.OnContentChanged();
     48//      FillGanttChart();
     49//    }
    5050
    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     }
     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//    }
    7373
    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     }
     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//    }
    8181
    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     }
     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//    }
    8787
    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     }
     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//    }
    9898
    99     private void JobOnTasksChanged(object sender, EventArgs e) {
    100       FillGanttChart();
    101     }
     99//    private void JobOnTasksChanged(object sender, EventArgs e) {
     100//      FillGanttChart();
     101//    }
    102102
    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 }
     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 TracChangeset for help on using the changeset viewer.