Changeset 10042 for branches/Breadcrumbs/HeuristicLab.Core.Views/3.3
- Timestamp:
- 10/15/13 16:11:27 (11 years ago)
- Location:
- branches/Breadcrumbs/HeuristicLab.Core.Views/3.3
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/Breadcrumbs/HeuristicLab.Core.Views/3.3/ItemCollectionView.cs
r9755 r10042 140 140 try { 141 141 return (T)typeSelectorDialog.TypeSelector.CreateInstanceOfSelectedType(); 142 } 143 catch (Exception ex) { 142 } catch (Exception ex) { 144 143 ErrorHandling.ShowErrorDialog(this, ex); 145 144 } … … 246 245 protected virtual void itemsListView_DoubleClick(object sender, EventArgs e) { 247 246 if (itemsListView.SelectedItems.Count == 1) { 248 Titem = itemsListView.SelectedItems[0].Tag as T;247 var item = itemsListView.SelectedItems[0].Tag as T; 249 248 if (item != null) { 250 IContentView view = MainFormManager.MainForm.ShowContent(item); 251 if (view != null) { 252 view.ReadOnly = ReadOnly; 253 view.Locked = Locked; 249 ViewHost outmostViewHost = null; 250 for (var control = Parent; control != null; control = control.Parent) { 251 var vh = control as ViewHost; 252 if (vh != null) outmostViewHost = vh; 253 } 254 if (outmostViewHost != null) { 255 var oldCrumbs = outmostViewHost.Breadcrumbs; 256 var newCrumbs = BuildBreadcrumbTrail(); 257 outmostViewHost.Content = null; 258 var viewType = MainFormManager.GetDefaultViewType(item.GetType()); 259 outmostViewHost.ViewType = viewType; 260 outmostViewHost.Content = item; 261 outmostViewHost.UpdateBreadcrumbTrail(oldCrumbs, newCrumbs.Concat(new[] { item })); 262 outmostViewHost.ActiveView.ReadOnly = ReadOnly; 263 outmostViewHost.ActiveView.Locked = Locked; 254 264 } 255 265 } … … 440 450 } 441 451 } 452 protected virtual IEnumerable<IContent> BuildBreadcrumbTrail() { 453 var l = new LinkedList<IContent>(); 454 for (var control = (Control)this; control != null; control = control.Parent) { 455 var vh = control as ViewHost; 456 if (vh != null && vh.Content != null) 457 l.AddFirst(vh.Content); 458 } 459 return l; 460 } 442 461 #endregion 443 462 } -
branches/Breadcrumbs/HeuristicLab.Core.Views/3.3/ItemListView.cs
r9755 r10042 146 146 try { 147 147 return (T)typeSelectorDialog.TypeSelector.CreateInstanceOfSelectedType(); 148 } 149 catch (Exception ex) { 148 } catch (Exception ex) { 150 149 ErrorHandling.ShowErrorDialog(this, ex); 151 150 } … … 267 266 protected virtual void itemsListView_DoubleClick(object sender, EventArgs e) { 268 267 if (itemsListView.SelectedItems.Count == 1) { 269 Titem = itemsListView.SelectedItems[0].Tag as T;268 var item = itemsListView.SelectedItems[0].Tag as T; 270 269 if (item != null) { 271 IContentView view = MainFormManager.MainForm.ShowContent(item); 272 if (view != null) { 273 view.ReadOnly = ReadOnly; 274 view.Locked = Locked; 270 ViewHost outmostViewHost = null; 271 for (var control = Parent; control != null; control = control.Parent) { 272 var vh = control as ViewHost; 273 if (vh != null) outmostViewHost = vh; 274 } 275 if (outmostViewHost != null) { 276 var oldCrumbs = outmostViewHost.Breadcrumbs; 277 var newCrumbs = BuildBreadcrumbTrail(); 278 outmostViewHost.Content = null; 279 var viewType = MainFormManager.GetDefaultViewType(item.GetType()); 280 outmostViewHost.ViewType = viewType; 281 outmostViewHost.Content = item; 282 outmostViewHost.UpdateBreadcrumbTrail(oldCrumbs, newCrumbs.Concat(new[] { item })); 283 outmostViewHost.ActiveView.ReadOnly = ReadOnly; 284 outmostViewHost.ActiveView.Locked = Locked; 275 285 } 276 286 } … … 506 516 } 507 517 } 518 protected virtual IEnumerable<IContent> BuildBreadcrumbTrail() { 519 var l = new LinkedList<IContent>(); 520 for (var control = (Control)this; control != null; control = control.Parent) { 521 var vh = control as ViewHost; 522 if (vh != null && vh.Content != null) 523 l.AddFirst(vh.Content); 524 } 525 return l; 526 } 508 527 #endregion 509 528 } -
branches/Breadcrumbs/HeuristicLab.Core.Views/3.3/ParameterCollectionView.cs
r9456 r10042 27 27 using HeuristicLab.Collections; 28 28 using HeuristicLab.MainForm; 29 using HeuristicLab.MainForm.WindowsForms; 29 30 30 31 namespace HeuristicLab.Core.Views { … … 152 153 protected override void itemsListView_DoubleClick(object sender, EventArgs e) { 153 154 if (itemsListView.SelectedItems.Count == 1) { 154 IParameter item = itemsListView.SelectedItems[0].Tag as IParameter;155 var item = itemsListView.SelectedItems[0].Tag as IParameter; 155 156 if (item != null) { 156 IContentView view = MainFormManager.MainForm.ShowContent(item); 157 if (view != null) { 158 view.ReadOnly = ReadOnly || (item.Hidden && !AllowEditingOfHiddenParameters); 159 view.Locked = Locked; 157 ViewHost outmostViewHost = null; 158 for (var control = Parent; control != null; control = control.Parent) { 159 var vh = control as ViewHost; 160 if (vh != null) outmostViewHost = vh; 161 } 162 if (outmostViewHost != null) { 163 var oldCrumbs = outmostViewHost.Breadcrumbs; 164 var newCrumbs = BuildBreadcrumbTrail(); 165 outmostViewHost.Content = null; 166 var viewType = MainFormManager.GetDefaultViewType(item.GetType()); 167 outmostViewHost.ViewType = viewType; 168 outmostViewHost.Content = item; 169 outmostViewHost.UpdateBreadcrumbTrail(oldCrumbs, newCrumbs.Concat(new[] { item })); 170 outmostViewHost.ActiveView.ReadOnly = ReadOnly; 171 outmostViewHost.ActiveView.Locked = Locked; 160 172 } 161 173 }
Note: See TracChangeset
for help on using the changeset viewer.