source: branches/DataPreprocessing Enhancements/HeuristicLab.DataPreprocessing.Views/3.4/ViewShortcutListView.cs @ 14470

Last change on this file since 14470 was 14470, checked in by pfleck, 4 years ago

#2709

  • Fixed bugs with double-click on view shortcut.
  • Reuse visual properties for single scatterplot.
File size: 2.2 KB
Line 
1#region License Information
2/* HeuristicLab
3 * Copyright (C) 2002-2016 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
22using System;
23using HeuristicLab.Core;
24using HeuristicLab.Core.Views;
25using HeuristicLab.MainForm;
26
27namespace HeuristicLab.DataPreprocessing.Views {
28  [View("ViewShortcutCollection View")]
29  [Content(typeof(IItemList<IViewShortcut>), true)]
30  public partial class ViewShortcutListView : ItemListView<IViewShortcut> {
31
32    public ViewShortcutListView() {
33      InitializeComponent();
34      Controls.Clear();
35      Controls.Add(splitContainer);
36      splitContainer.Panel1.Controls.Clear();
37      splitContainer.Panel1.Controls.Add(itemsListView);
38      splitContainer.Panel2.Controls.Clear();
39      splitContainer.Panel2.Controls.Add(viewHost);
40    }
41
42    //Open item in new tab on double click
43    //Clone chart items
44    protected override void itemsListView_DoubleClick(object sender, EventArgs e) {
45      if (itemsListView.SelectedItems.Count == 1) {
46        IViewShortcut item = itemsListView.SelectedItems[0].Tag as IViewShortcut;
47        if (item != null) {
48          try {
49            item = (IViewShortcut)item.Clone();
50            var view = MainFormManager.MainForm.ShowContent(item);
51            if (view != null) {
52              view.ReadOnly = ReadOnly;
53              view.Locked = Locked;
54            }
55          } catch (NullReferenceException) {
56            // cloning for preprocessing not done properly yet
57          }
58        }
59      }
60    }
61  }
62}
Note: See TracBrowser for help on using the repository browser.