Changeset 4715
- Timestamp:
- 11/03/10 04:31:46 (14 years ago)
- Location:
- trunk/sources
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Analysis/3.3/HeatMap.cs
r4703 r4715 53 53 return clone; 54 54 } 55 56 public override string ToString() { 57 return ItemName; 58 } 55 59 } 56 60 } -
trunk/sources/HeuristicLab.Analysis/3.3/PopulationDiversityAnalyzer.cs
r4703 r4715 96 96 double[,] similarities = CalculateSimilarities(sortedSolutions); 97 97 98 // calculate m aximum similarities, average maximum similarity and average similarity98 // calculate minimum, average and maximum similarities 99 99 double similarity; 100 100 int count = sortedSolutions.Length; 101 double[] minSimilarities = new double[sortedSolutions.Length]; 102 double[] avgSimilarities = new double[sortedSolutions.Length]; 101 103 double[] maxSimilarities = new double[sortedSolutions.Length]; 102 double avgMaxSimilarity;103 104 double avgSimilarity = 0; 104 maxSimilarities.Initialize();105 105 for (int i = 0; i < count; i++) { 106 for (int j = i + 1; j < count; j++) { 107 similarity = similarities[i, j]; 108 avgSimilarity += similarity; 109 if (maxSimilarities[i] < similarity) maxSimilarities[i] = similarity; 110 if (maxSimilarities[j] < similarity) maxSimilarities[j] = similarity; 106 minSimilarities[i] = 1; 107 avgSimilarities[i] = 0; 108 maxSimilarities[i] = 0; 109 for (int j = 0; j < count; j++) { 110 if (i != j) { 111 similarity = similarities[i, j]; 112 avgSimilarity += similarity; 113 if (minSimilarities[i] > similarity) minSimilarities[i] = similarity; 114 avgSimilarities[i] += similarity; 115 if (maxSimilarities[i] < similarity) maxSimilarities[i] = similarity; 116 } 111 117 } 112 } 113 avgMaxSimilarity = maxSimilarities.Average(); 114 avgSimilarity = avgSimilarity / ((count - 1) * count / 2); 118 avgSimilarities[i] = avgSimilarities[i] / (count - 1); 119 } 120 double avgMinSimilarity = minSimilarities.Average(); 121 double avgAvgSimilarity = avgSimilarities.Average(); 122 double avgMaxSimilarity = maxSimilarities.Average(); 123 avgSimilarity = avgSimilarity / (count * count - count); 115 124 116 125 // fetch results collection … … 147 156 ((DoubleValue)results["Average Population Similarity"].Value).Value = avgSimilarity; 148 157 149 // store average maximum similarity 158 // store average minimum, average and maximum similarity 159 if (!results.ContainsKey("Average Minimum Solution Similarity")) 160 results.Add(new Result("Average Minimum Solution Similarity", new DoubleValue(avgMinSimilarity))); 161 else 162 ((DoubleValue)results["Average Minimum Solution Similarity"].Value).Value = avgMinSimilarity; 163 164 if (!results.ContainsKey("Average Average Solution Similarity")) 165 results.Add(new Result("Average Average Solution Similarity", new DoubleValue(avgAvgSimilarity))); 166 else 167 ((DoubleValue)results["Average Average Solution Similarity"].Value).Value = avgAvgSimilarity; 168 150 169 if (!results.ContainsKey("Average Maximum Solution Similarity")) 151 170 results.Add(new Result("Average Maximum Solution Similarity", new DoubleValue(avgMaxSimilarity))); … … 155 174 // store population similarity data table 156 175 DataTable similarityDataTable; 157 if (!results.ContainsKey(" Population Similarity")) {158 similarityDataTable = new DataTable(" Population Similarity");159 results.Add(new Result(" Population Similarity", similarityDataTable));176 if (!results.ContainsKey("Average Solution Similarity")) { 177 similarityDataTable = new DataTable("Average Solution Similarity"); 178 results.Add(new Result("Average Solution Similarity", similarityDataTable)); 160 179 DataRowVisualProperties visualProperties = new DataRowVisualProperties(); 161 180 visualProperties.ChartType = DataRowVisualProperties.DataRowChartType.Line; 162 181 visualProperties.StartIndexZero = true; 163 182 similarityDataTable.Rows.Add(new DataRow("Average Population Similarity", null, visualProperties)); 183 similarityDataTable.Rows.Add(new DataRow("Average Minimum Solution Similarity", null, visualProperties)); 184 similarityDataTable.Rows.Add(new DataRow("Average Average Solution Similarity", null, visualProperties)); 164 185 similarityDataTable.Rows.Add(new DataRow("Average Maximum Solution Similarity", null, visualProperties)); 165 186 } else { 166 similarityDataTable = (DataTable)results[" Population Similarity"].Value;187 similarityDataTable = (DataTable)results["Average Solution Similarity"].Value; 167 188 } 168 189 similarityDataTable.Rows["Average Population Similarity"].Values.Add(avgSimilarity); 190 similarityDataTable.Rows["Average Minimum Solution Similarity"].Values.Add(avgMinSimilarity); 191 similarityDataTable.Rows["Average Average Solution Similarity"].Values.Add(avgAvgSimilarity); 169 192 similarityDataTable.Rows["Average Maximum Solution Similarity"].Values.Add(avgMaxSimilarity); 170 193 171 194 // store maximum similarities 172 DataTable maxSimilaritiesDataTable = new DataTable("Maximum Solution Similarities"); 173 maxSimilaritiesDataTable.Rows.Add(new DataRow("Maximum Solution Similarity")); 174 maxSimilaritiesDataTable.Rows["Maximum Solution Similarity"].VisualProperties.ChartType = DataRowVisualProperties.DataRowChartType.Columns; 175 maxSimilaritiesDataTable.Rows["Maximum Solution Similarity"].Values.AddRange(maxSimilarities); 176 if (!results.ContainsKey("Maximum Solution Similarities")) { 177 results.Add(new Result("Maximum Solution Similarities", maxSimilaritiesDataTable)); 195 DataTable minAvgMaxSimilaritiesDataTable = new DataTable("Minimum/Average/Maximum Solution Similarities"); 196 minAvgMaxSimilaritiesDataTable.Rows.Add(new DataRow("Minimum Solution Similarity")); 197 minAvgMaxSimilaritiesDataTable.Rows["Minimum Solution Similarity"].VisualProperties.ChartType = DataRowVisualProperties.DataRowChartType.Columns; 198 minAvgMaxSimilaritiesDataTable.Rows["Minimum Solution Similarity"].Values.AddRange(minSimilarities); 199 minAvgMaxSimilaritiesDataTable.Rows.Add(new DataRow("Average Solution Similarity")); 200 minAvgMaxSimilaritiesDataTable.Rows["Average Solution Similarity"].VisualProperties.ChartType = DataRowVisualProperties.DataRowChartType.Columns; 201 minAvgMaxSimilaritiesDataTable.Rows["Average Solution Similarity"].Values.AddRange(avgSimilarities); 202 minAvgMaxSimilaritiesDataTable.Rows.Add(new DataRow("Maximum Solution Similarity")); 203 minAvgMaxSimilaritiesDataTable.Rows["Maximum Solution Similarity"].VisualProperties.ChartType = DataRowVisualProperties.DataRowChartType.Columns; 204 minAvgMaxSimilaritiesDataTable.Rows["Maximum Solution Similarity"].Values.AddRange(maxSimilarities); 205 if (!results.ContainsKey("Minimum/Average/Maximum Solution Similarities")) { 206 results.Add(new Result("Minimum/Average/Maximum Solution Similarities", minAvgMaxSimilaritiesDataTable)); 178 207 } else { 179 results["M aximum Solution Similarities"].Value = maxSimilaritiesDataTable;208 results["Minimum/Average/Maximum Solution Similarities"].Value = minAvgMaxSimilaritiesDataTable; 180 209 } 181 210 182 211 // store maximum similarities history 183 212 if (storeHistory) { 184 if (!results.ContainsKey("M aximum Solution Similarities History")) {213 if (!results.ContainsKey("Minimum/Average/Maximum Solution Similarities History")) { 185 214 DataTableHistory history = new DataTableHistory(); 186 history.Add(m axSimilaritiesDataTable);187 results.Add(new Result("M aximum Solution Similarities History", history));215 history.Add(minAvgMaxSimilaritiesDataTable); 216 results.Add(new Result("Minimum/Average/Maximum Solution Similarities History", history)); 188 217 } else { 189 ((DataTableHistory)results["M aximum Solution Similarities History"].Value).Add(maxSimilaritiesDataTable);218 ((DataTableHistory)results["Minimum/Average/Maximum Solution Similarities History"].Value).Add(minAvgMaxSimilaritiesDataTable); 190 219 } 191 220 } -
trunk/sources/HeuristicLab.Core.Views/3.3/MovieView.Designer.cs
r4641 r4715 49 49 this.components = new System.ComponentModel.Container(); 50 50 this.itemsGroupBox = new System.Windows.Forms.GroupBox(); 51 this.indexLabel = new System.Windows.Forms.Label(); 52 this.delayComboBox = new System.Windows.Forms.ComboBox(); 51 53 this.stopButton = new System.Windows.Forms.Button(); 54 this.nextButton = new System.Windows.Forms.Button(); 52 55 this.lastButton = new System.Windows.Forms.Button(); 53 56 this.playButton = new System.Windows.Forms.Button(); 57 this.previousButton = new System.Windows.Forms.Button(); 54 58 this.firstButton = new System.Windows.Forms.Button(); 55 59 this.maximumLabel = new System.Windows.Forms.Label(); 56 this.indexLabel = new System.Windows.Forms.Label();57 60 this.minimumLabel = new System.Windows.Forms.Label(); 58 61 this.trackBar = new System.Windows.Forms.TrackBar(); … … 69 72 | System.Windows.Forms.AnchorStyles.Left) 70 73 | System.Windows.Forms.AnchorStyles.Right))); 74 this.itemsGroupBox.Controls.Add(this.indexLabel); 75 this.itemsGroupBox.Controls.Add(this.delayComboBox); 71 76 this.itemsGroupBox.Controls.Add(this.stopButton); 77 this.itemsGroupBox.Controls.Add(this.nextButton); 72 78 this.itemsGroupBox.Controls.Add(this.lastButton); 73 79 this.itemsGroupBox.Controls.Add(this.playButton); 80 this.itemsGroupBox.Controls.Add(this.previousButton); 74 81 this.itemsGroupBox.Controls.Add(this.firstButton); 75 82 this.itemsGroupBox.Controls.Add(this.maximumLabel); 76 this.itemsGroupBox.Controls.Add(this.indexLabel);77 83 this.itemsGroupBox.Controls.Add(this.minimumLabel); 78 84 this.itemsGroupBox.Controls.Add(this.trackBar); … … 85 91 this.itemsGroupBox.Text = "Items"; 86 92 // 93 // indexLabel 94 // 95 this.indexLabel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 96 | System.Windows.Forms.AnchorStyles.Right))); 97 this.indexLabel.Location = new System.Drawing.Point(173, 364); 98 this.indexLabel.Name = "indexLabel"; 99 this.indexLabel.Size = new System.Drawing.Size(186, 13); 100 this.indexLabel.TabIndex = 9; 101 this.indexLabel.Text = "0"; 102 this.indexLabel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; 103 // 104 // delayComboBox 105 // 106 this.delayComboBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); 107 this.delayComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; 108 this.delayComboBox.FormattingEnabled = true; 109 this.delayComboBox.Location = new System.Drawing.Point(472, 355); 110 this.delayComboBox.Name = "delayComboBox"; 111 this.delayComboBox.Size = new System.Drawing.Size(54, 21); 112 this.delayComboBox.TabIndex = 11; 113 this.toolTip.SetToolTip(this.delayComboBox, "Visualization Delay"); 114 this.delayComboBox.SelectedIndexChanged += new System.EventHandler(this.delayComboBox_SelectedIndexChanged); 115 // 87 116 // stopButton 88 117 // 89 this.stopButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles. Right)));118 this.stopButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); 90 119 this.stopButton.Image = HeuristicLab.Common.Resources.VS2008ImageLibrary.Stop; 91 this.stopButton.Location = new System.Drawing.Point( 502, 355);120 this.stopButton.Location = new System.Drawing.Point(36, 355); 92 121 this.stopButton.Name = "stopButton"; 93 122 this.stopButton.Size = new System.Drawing.Size(24, 24); 94 this.stopButton.TabIndex = 5;123 this.stopButton.TabIndex = 7; 95 124 this.toolTip.SetToolTip(this.stopButton, "Stop"); 96 125 this.stopButton.UseVisualStyleBackColor = true; 97 126 this.stopButton.Click += new System.EventHandler(this.stopButton_Click); 127 // 128 // nextButton 129 // 130 this.nextButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); 131 this.nextButton.Image = HeuristicLab.Common.Resources.VS2008ImageLibrary.MoveNext; 132 this.nextButton.Location = new System.Drawing.Point(472, 325); 133 this.nextButton.Name = "nextButton"; 134 this.nextButton.Size = new System.Drawing.Size(24, 24); 135 this.nextButton.TabIndex = 4; 136 this.nextButton.UseVisualStyleBackColor = true; 137 this.nextButton.Click += new System.EventHandler(this.nextButton_Click); 98 138 // 99 139 // lastButton … … 104 144 this.lastButton.Name = "lastButton"; 105 145 this.lastButton.Size = new System.Drawing.Size(24, 24); 106 this.lastButton.TabIndex = 3;146 this.lastButton.TabIndex = 5; 107 147 this.toolTip.SetToolTip(this.lastButton, "Move to Last"); 108 148 this.lastButton.UseVisualStyleBackColor = true; … … 116 156 this.playButton.Name = "playButton"; 117 157 this.playButton.Size = new System.Drawing.Size(24, 24); 118 this.playButton.TabIndex = 4;158 this.playButton.TabIndex = 6; 119 159 this.toolTip.SetToolTip(this.playButton, "Play"); 120 160 this.playButton.UseVisualStyleBackColor = true; 121 161 this.playButton.Click += new System.EventHandler(this.playButton_Click); 162 // 163 // previousButton 164 // 165 this.previousButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); 166 this.previousButton.Image = HeuristicLab.Common.Resources.VS2008ImageLibrary.MovePrevious; 167 this.previousButton.Location = new System.Drawing.Point(36, 325); 168 this.previousButton.Name = "previousButton"; 169 this.previousButton.Size = new System.Drawing.Size(24, 24); 170 this.previousButton.TabIndex = 2; 171 this.previousButton.UseVisualStyleBackColor = true; 172 this.previousButton.Click += new System.EventHandler(this.previousButton_Click); 122 173 // 123 174 // firstButton … … 136 187 // 137 188 this.maximumLabel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); 138 this.maximumLabel.Location = new System.Drawing.Point(3 88, 364);189 this.maximumLabel.Location = new System.Drawing.Point(351, 364); 139 190 this.maximumLabel.Name = "maximumLabel"; 140 191 this.maximumLabel.Size = new System.Drawing.Size(108, 13); 141 this.maximumLabel.TabIndex = 8;192 this.maximumLabel.TabIndex = 10; 142 193 this.maximumLabel.Text = "10"; 143 194 this.maximumLabel.TextAlign = System.Drawing.ContentAlignment.MiddleRight; 144 195 // 145 // indexLabel146 //147 this.indexLabel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)148 | System.Windows.Forms.AnchorStyles.Right)));149 this.indexLabel.Location = new System.Drawing.Point(173, 364);150 this.indexLabel.Name = "indexLabel";151 this.indexLabel.Size = new System.Drawing.Size(186, 13);152 this.indexLabel.TabIndex = 7;153 this.indexLabel.Text = "0";154 this.indexLabel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;155 //156 196 // minimumLabel 157 197 // 158 198 this.minimumLabel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); 159 this.minimumLabel.Location = new System.Drawing.Point( 36, 364);199 this.minimumLabel.Location = new System.Drawing.Point(73, 364); 160 200 this.minimumLabel.Name = "minimumLabel"; 161 201 this.minimumLabel.Size = new System.Drawing.Size(38, 13); 162 this.minimumLabel.TabIndex = 6;202 this.minimumLabel.TabIndex = 8; 163 203 this.minimumLabel.Text = "0"; 164 204 this.minimumLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; … … 169 209 | System.Windows.Forms.AnchorStyles.Right))); 170 210 this.trackBar.LargeChange = 1; 171 this.trackBar.Location = new System.Drawing.Point( 36, 316);211 this.trackBar.Location = new System.Drawing.Point(66, 316); 172 212 this.trackBar.Name = "trackBar"; 173 this.trackBar.Size = new System.Drawing.Size(4 60, 45);174 this.trackBar.TabIndex = 2;213 this.trackBar.Size = new System.Drawing.Size(400, 45); 214 this.trackBar.TabIndex = 3; 175 215 this.trackBar.TickStyle = System.Windows.Forms.TickStyle.Both; 176 216 this.trackBar.ValueChanged += new System.EventHandler(this.trackBar_ValueChanged); … … 224 264 protected Label minimumLabel; 225 265 protected System.ComponentModel.BackgroundWorker backgroundWorker; 266 protected Button nextButton; 267 protected Button previousButton; 268 protected ComboBox delayComboBox; 226 269 } 227 270 } -
trunk/sources/HeuristicLab.Core.Views/3.3/MovieView.cs
r4641 r4715 31 31 [View("Movie View")] 32 32 public partial class MovieView<T> : ItemView where T : class, IItem { 33 #region Delay 34 protected class Delay { 35 public string Text { get; private set; } 36 public int Milliseconds { get; private set; } 37 38 public Delay(string text, int milliseconds) { 39 Text = text; 40 Milliseconds = milliseconds; 41 } 42 43 public override string ToString() { 44 return Text; 45 } 46 } 47 #endregion 48 49 protected int delay; 50 33 51 public new IItemCollection<T> Content { 34 52 get { return (IItemCollection<T>)base.Content; } … … 38 56 public MovieView() { 39 57 InitializeComponent(); 58 59 delayComboBox.Items.Add(new Delay("5s", 5000)); 60 delayComboBox.Items.Add(new Delay("2s", 2000)); 61 delayComboBox.Items.Add(new Delay("1s", 1000)); 62 delayComboBox.Items.Add(new Delay("0.5s", 500)); 63 delayComboBox.Items.Add(new Delay("0.1s", 100)); 64 delayComboBox.Items.Add(new Delay("0.05s", 50)); 65 delayComboBox.Items.Add(new Delay("0.01s", 10)); 66 delayComboBox.SelectedIndex = 4; 67 delay = 100; 40 68 } 41 69 … … 70 98 protected override void SetEnabledStateOfControls() { 71 99 base.SetEnabledStateOfControls(); 72 firstButton.Enabled = (Content != null) && (Content.Count > 0) && (!backgroundWorker.IsBusy); 100 firstButton.Enabled = (Content != null) && (Content.Count > 0) && (trackBar.Value != trackBar.Minimum) && (!backgroundWorker.IsBusy); 101 previousButton.Enabled = (Content != null) && (Content.Count > 0) && (trackBar.Value != trackBar.Minimum) && (!backgroundWorker.IsBusy); 73 102 trackBar.Enabled = (Content != null) && (Content.Count > 0) && (!backgroundWorker.IsBusy); 74 lastButton.Enabled = (Content != null) && (Content.Count > 0) && (!backgroundWorker.IsBusy); 103 nextButton.Enabled = (Content != null) && (Content.Count > 0) && (trackBar.Value != trackBar.Maximum) && (!backgroundWorker.IsBusy); 104 lastButton.Enabled = (Content != null) && (Content.Count > 0) && (trackBar.Value != trackBar.Maximum) && (!backgroundWorker.IsBusy); 75 105 playButton.Enabled = (Content != null) && (Content.Count > 0) && (!backgroundWorker.IsBusy); 76 106 stopButton.Enabled = (Content != null) && (backgroundWorker.IsBusy); 107 delayComboBox.Enabled = (Content != null) && (Content.Count > 0); 77 108 } 78 109 … … 89 120 trackBar.Maximum = Content.Count - 1; 90 121 maximumLabel.Text = trackBar.Maximum.ToString(); 91 if (viewHost.Content == null) { 92 viewHost.Content = Content.FirstOrDefault(); 93 SetEnabledStateOfControls(); 94 } 122 if (viewHost.Content == null) viewHost.Content = Content.FirstOrDefault(); 123 SetEnabledStateOfControls(); 95 124 } 96 125 } … … 105 134 viewHost.Content = Content.FirstOrDefault(); 106 135 UpdateLables(); 107 SetEnabledStateOfControls();108 136 } 137 SetEnabledStateOfControls(); 109 138 } 110 139 } … … 124 153 #region Control Events 125 154 protected virtual void trackBar_ValueChanged(object sender, EventArgs e) { 155 viewHost.Content = Content == null ? null : Content.ElementAtOrDefault(trackBar.Value); 126 156 indexLabel.Text = trackBar.Value.ToString(); 127 viewHost.Content = Content == null ? null : Content.ElementAtOrDefault(trackBar.Value);157 SetEnabledStateOfControls(); 128 158 } 129 159 protected virtual void firstButton_Click(object sender, EventArgs e) { 130 trackBar.Value = trackBar.Minimum; 160 if (trackBar.Value != trackBar.Minimum) trackBar.Value = trackBar.Minimum; 161 } 162 protected virtual void previousButton_Click(object sender, EventArgs e) { 163 if (trackBar.Value != trackBar.Minimum) trackBar.Value--; 164 } 165 protected virtual void nextButton_Click(object sender, EventArgs e) { 166 if (trackBar.Value != trackBar.Maximum) trackBar.Value++; 131 167 } 132 168 protected virtual void lastButton_Click(object sender, EventArgs e) { 133 trackBar.Value = trackBar.Maximum;169 if (trackBar.Value != trackBar.Maximum) trackBar.Value = trackBar.Maximum; 134 170 } 135 171 protected virtual void playButton_Click(object sender, EventArgs e) { 136 172 firstButton.Enabled = false; 173 previousButton.Enabled = false; 137 174 trackBar.Enabled = false; 175 nextButton.Enabled = false; 138 176 lastButton.Enabled = false; 139 177 playButton.Enabled = false; … … 142 180 } 143 181 protected virtual void stopButton_Click(object sender, EventArgs e) { 182 stopButton.Enabled = false; 144 183 backgroundWorker.CancelAsync(); 184 } 185 protected virtual void delayComboBox_SelectedIndexChanged(object sender, EventArgs e) { 186 Delay selected = delayComboBox.SelectedItem as Delay; 187 if (selected != null) delay = selected.Milliseconds; 145 188 } 146 189 #endregion … … 154 197 terminate = trackBar.Value == trackBar.Maximum; 155 198 }); 156 Thread.Sleep( 100);199 Thread.Sleep(delay); 157 200 } 158 201 } 159 202 protected virtual void backgroundWorker_RunWorkerCompleted(object sender, System.ComponentModel.RunWorkerCompletedEventArgs e) { 160 203 firstButton.Enabled = true; 204 previousButton.Enabled = true; 161 205 trackBar.Enabled = true; 206 nextButton.Enabled = true; 162 207 lastButton.Enabled = true; 163 208 playButton.Enabled = true; -
trunk/sources/HeuristicLab.Core.Views/3.3/NamedItemCollectionView.cs
r3775 r4715 75 75 protected override ListViewItem CreateListViewItem(T item) { 76 76 ListViewItem listViewItem = base.CreateListViewItem(item); 77 listViewItem.ToolTipText = item.ItemName + ": " + item.Description;77 listViewItem.ToolTipText = string.IsNullOrEmpty(item.Description) ? item.ItemName : item.ItemName + ": " + item.Description; 78 78 return listViewItem; 79 79 }
Note: See TracChangeset
for help on using the changeset viewer.