Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
06/16/11 10:56:26 (13 years ago)
Author:
mkommend
Message:

#1555: Refactored optimizer views to derive from common base class IOptimizerView.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Optimization.Views/3.3/BatchRunView.cs

    r5837 r6425  
    3535  [View("BatchRun View")]
    3636  [Content(typeof(BatchRun), true)]
    37   public sealed partial class BatchRunView : NamedItemView {
     37  public sealed partial class BatchRunView : IOptimizerView {
    3838    private TypeSelectorDialog optimizerTypeSelectorDialog;
    3939
     
    6060    protected override void DeregisterContentEvents() {
    6161      Content.OptimizerChanged -= new EventHandler(Content_OptimizerChanged);
    62       Content.ExceptionOccurred -= new EventHandler<EventArgs<Exception>>(Content_ExceptionOccurred);
    63       Content.ExecutionStateChanged -= new EventHandler(Content_ExecutionStateChanged);
    64       Content.ExecutionTimeChanged -= new EventHandler(Content_ExecutionTimeChanged);
    65       Content.Prepared -= new EventHandler(Content_Prepared);
    66       Content.Started -= new EventHandler(Content_Started);
    67       Content.Paused -= new EventHandler(Content_Paused);
    68       Content.Stopped -= new EventHandler(Content_Stopped);
    6962      Content.RepetitionsChanged -= new EventHandler(Content_RepetitionsChanged);
    7063      base.DeregisterContentEvents();
     
    7366      base.RegisterContentEvents();
    7467      Content.OptimizerChanged += new EventHandler(Content_OptimizerChanged);
    75       Content.ExceptionOccurred += new EventHandler<EventArgs<Exception>>(Content_ExceptionOccurred);
    76       Content.ExecutionStateChanged += new EventHandler(Content_ExecutionStateChanged);
    77       Content.ExecutionTimeChanged += new EventHandler(Content_ExecutionTimeChanged);
    78       Content.Prepared += new EventHandler(Content_Prepared);
    79       Content.Started += new EventHandler(Content_Started);
    80       Content.Paused += new EventHandler(Content_Paused);
    81       Content.Stopped += new EventHandler(Content_Stopped);
    8268      Content.RepetitionsChanged += new EventHandler(Content_RepetitionsChanged);
    8369    }
     
    8975        optimizerViewHost.Content = null;
    9076        runsView.Content = null;
    91         executionTimeTextBox.Text = "-";
    9277      } else {
    93         Locked = ReadOnly = Content.ExecutionState == ExecutionState.Started;
    9478        repetitionsNumericUpDown.Value = Content.Repetitions;
    9579        optimizerViewHost.Content = Content.Optimizer;
    9680        runsView.Content = Content.Runs;
    97         executionTimeTextBox.Text = Content.ExecutionTime.ToString();
    9881      }
    9982    }
     
    10588      optimizerViewHost.Enabled = Content != null;
    10689      runsView.Enabled = Content != null;
    107       executionTimeTextBox.Enabled = Content != null;
    108       SetEnabledStateOfExecutableButtons();
    10990    }
    11091
     
    122103
    123104    #region Content Events
    124     private void Content_ExecutionStateChanged(object sender, EventArgs e) {
    125       if (InvokeRequired)
    126         Invoke(new EventHandler(Content_ExecutionStateChanged), sender, e);
    127       else
    128         startButton.Enabled = pauseButton.Enabled = stopButton.Enabled = resetButton.Enabled = false;
    129     }
    130     private void Content_Prepared(object sender, EventArgs e) {
    131       if (InvokeRequired)
    132         Invoke(new EventHandler(Content_Prepared), sender, e);
    133       else {
    134         ReadOnly = Locked = false;
    135         SetEnabledStateOfExecutableButtons();
    136       }
    137     }
    138     private void Content_Started(object sender, EventArgs e) {
    139       if (InvokeRequired)
    140         Invoke(new EventHandler(Content_Started), sender, e);
    141       else {
    142         ReadOnly = Locked = true;
    143         SetEnabledStateOfExecutableButtons();
    144       }
    145     }
    146     private void Content_Paused(object sender, EventArgs e) {
    147       if (InvokeRequired)
    148         Invoke(new EventHandler(Content_Paused), sender, e);
    149       else {
    150         ReadOnly = Locked = false;
    151         SetEnabledStateOfExecutableButtons();
    152       }
    153     }
    154     private void Content_Stopped(object sender, EventArgs e) {
    155       if (InvokeRequired)
    156         Invoke(new EventHandler(Content_Stopped), sender, e);
    157       else {
    158         ReadOnly = Locked = false;
    159         SetEnabledStateOfExecutableButtons();
    160       }
    161     }
    162     private void Content_ExecutionTimeChanged(object sender, EventArgs e) {
    163       if (InvokeRequired)
    164         Invoke(new EventHandler(Content_ExecutionTimeChanged), sender, e);
    165       else
    166         executionTimeTextBox.Text = Content == null ? "-" : Content.ExecutionTime.ToString();
    167     }
    168     private void Content_ExceptionOccurred(object sender, EventArgs<Exception> e) {
    169       if (InvokeRequired)
    170         Invoke(new EventHandler<EventArgs<Exception>>(Content_ExceptionOccurred), sender, e);
    171       else
    172         ErrorHandling.ShowErrorDialog(this, e.Value);
    173     }
    174105    private void Content_OptimizerChanged(object sender, EventArgs e) {
    175106      if (InvokeRequired)
     
    239170      }
    240171    }
    241     private void startButton_Click(object sender, EventArgs e) {
    242       Content.Start();
    243     }
    244     private void pauseButton_Click(object sender, EventArgs e) {
    245       Content.Pause();
    246     }
    247     private void stopButton_Click(object sender, EventArgs e) {
    248       Content.Stop();
    249     }
    250     private void resetButton_Click(object sender, EventArgs e) {
    251       Content.Prepare(false);
    252     }
     172
    253173    private void optimizerTabPage_DragEnterOver(object sender, DragEventArgs e) {
    254174      e.Effect = DragDropEffects.None;
     
    270190    #endregion
    271191
    272     #region Helpers
    273     private void SetEnabledStateOfExecutableButtons() {
    274       if (Content == null) {
    275         startButton.Enabled = pauseButton.Enabled = stopButton.Enabled = resetButton.Enabled = false;
    276       } else {
    277         startButton.Enabled = (Content.ExecutionState == ExecutionState.Prepared) || (Content.ExecutionState == ExecutionState.Paused);
    278         pauseButton.Enabled = Content.ExecutionState == ExecutionState.Started;
    279         stopButton.Enabled = (Content.ExecutionState == ExecutionState.Started) || (Content.ExecutionState == ExecutionState.Paused);
    280         resetButton.Enabled = Content.ExecutionState != ExecutionState.Started;
    281       }
    282     }
    283     #endregion
    284192  }
    285193}
Note: See TracChangeset for help on using the changeset viewer.