Mercurial > postarc > postarc
annotate Postarc/Postarc/Geodatabase/FieldInfo.cs @ 0:1aca3d413885 tip
Initial import of Postarc
author | Christian Lins <christian.lins@intevation.de> |
---|---|
date | Fri, 05 Oct 2012 23:55:06 +0200 |
parents | |
children |
rev | line source |
---|---|
0
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
1 using System; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
2 using System.Collections.Generic; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
3 using System.Linq; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
4 using System.Text; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
5 using ESRI.ArcGIS.Geodatabase; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
6 using ESRI.ArcGIS.esriSystem; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
7 |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
8 namespace Postarc.Geodatabase |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
9 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
10 public class FieldInfo : IFieldInfo |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
11 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
12 protected string alias = null; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
13 protected INumberFormat numberFormat = null; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
14 protected bool visible = true; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
15 |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
16 public static IFieldInfo Create(IField field) |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
17 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
18 return new FieldInfo(field); |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
19 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
20 |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
21 protected FieldInfo(IField field) |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
22 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
23 Alias = field.AliasName; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
24 switch (field.Type) |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
25 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
26 case esriFieldType.esriFieldTypeInteger: |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
27 case esriFieldType.esriFieldTypeSmallInteger: |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
28 this.numberFormat = new NumericFormatClass(); |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
29 break; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
30 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
31 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
32 |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
33 public string Alias |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
34 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
35 get |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
36 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
37 return this.alias; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
38 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
39 set |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
40 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
41 this.alias = value; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
42 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
43 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
44 |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
45 public INumberFormat NumberFormat |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
46 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
47 get |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
48 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
49 return this.numberFormat; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
50 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
51 set |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
52 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
53 this.numberFormat = value; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
54 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
55 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
56 |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
57 public bool Visible |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
58 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
59 get |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
60 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
61 return this.visible; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
62 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
63 set |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
64 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
65 this.visible = value; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
66 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
67 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
68 |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
69 public string get_AsString(object value) |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
70 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
71 if (value == null) |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
72 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
73 return "<NULL>"; |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
74 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
75 else |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
76 { |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
77 return value.ToString(); |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
78 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
79 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
80 } |
1aca3d413885
Initial import of Postarc
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
81 } |