-
Notifications
You must be signed in to change notification settings - Fork 64
/
FormSelectSchema.cs
70 lines (60 loc) · 1.98 KB
/
FormSelectSchema.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
// Name: FormSelectSchema.cs
// Description: Dialog box for selecting schema
// 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 FormSelectSchema : Form
{
DocProject m_project;
public FormSelectSchema()
{
InitializeComponent();
}
public FormSelectSchema(DocProject project) : this()
{
this.m_project = project;
foreach (DocSection docSection in project.Sections)
{
if (docSection.Schemas.Count > 0)
{
TreeNode tnSection = new TreeNode();
tnSection.Tag = docSection;
tnSection.Text = docSection.Name;
tnSection.ImageIndex = 1;
this.treeView.Nodes.Add(tnSection);
foreach (DocSchema docSchema in docSection.Schemas)
{
TreeNode tnSchema = new TreeNode();
tnSchema.Tag = docSchema;
tnSchema.Text = docSchema.Name;
tnSchema.ImageIndex = 0;
tnSection.Nodes.Add(tnSchema);
}
tnSection.Expand();
}
}
}
public DocSchema Selection
{
get
{
if (this.treeView.SelectedNode != null && this.treeView.SelectedNode.Tag is DocSchema)
{
return (DocSchema)this.treeView.SelectedNode.Tag;
}
return null;
}
}
}
}