-
Notifications
You must be signed in to change notification settings - Fork 64
/
Copy pathFormSelectView.cs
96 lines (85 loc) · 2.66 KB
/
FormSelectView.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
// Name: FormSelectView.cs
// Description: Dialog box for selecting model view
// Author: Tim Chipman
// Origination: Work performed for BuildingSmart by Constructivity.com LLC.
// Copyright: (c) 2012 BuildingSmart International Ltd.
// License: http://www.buildingsmart-tech.org/legal
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using IfcDoc.Schema.DOC;
namespace IfcDoc
{
public partial class FormSelectView : Form
{
DocProject m_project;
public FormSelectView()
{
InitializeComponent();
}
/// <summary>
///
/// </summary>
/// <param name="project">The project.</param>
public FormSelectView(DocProject project, string description)
: this()
{
this.m_project = project;
if (description != null)
{
this.labelDescription.Text = description;
}
foreach (DocModelView docView in this.m_project.ModelViews)
{
ListViewItem lvi = new ListViewItem();
lvi.Tag = docView;
lvi.Text = docView.Name;
lvi.ImageIndex = 0;
lvi.SubItems.Add(docView.Version);
this.listView.Items.Add(lvi);
}
}
public DocModelView[] Selection
{
get
{
DocModelView[] sel = null;
if (this.listView.SelectedItems.Count > 0)
{
sel = new DocModelView [this.listView.SelectedItems.Count];
for(int i = 0; i < this.listView.SelectedItems.Count; i++)
{
sel[i] = this.listView.SelectedItems[i].Tag as DocModelView;
}
}
return sel;
}
set
{
this.listView.SelectedItems.Clear();
if(value == null)
return;
foreach (DocModelView view in value)
{
foreach (ListViewItem lvi in this.listView.Items)
{
if (lvi.Tag == view)
{
lvi.Selected = true;
return;
}
}
}
}
}
private void listView_ItemActivate(object sender, EventArgs e)
{
this.DialogResult = DialogResult.OK;
this.Close();
}
}
}