Mercurial > dive4elements > river
annotate gwt-client/src/main/java/org/dive4elements/river/client/shared/model/PropertySetting.java @ 9119:36c80c7fd02f
missing files Veg'Zone, FontMapper
author | gernotbelger |
---|---|
date | Tue, 05 Jun 2018 10:25:48 +0200 |
parents | ea9eef426962 |
children |
rev | line source |
---|---|
5861
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde |
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
2 * Software engineering by Intevation GmbH |
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
3 * |
5993
ea9eef426962
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5861
diff
changeset
|
4 * This file is Free Software under the GNU AGPL (>=v3) |
5861
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the |
5993
ea9eef426962
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5861
diff
changeset
|
6 * documentation coming with Dive4Elements River for details. |
5861
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
7 */ |
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
8 |
5835
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
9 package org.dive4elements.river.client.shared.model; |
1439
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
10 |
3859
62332fa199bf
Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents:
1507
diff
changeset
|
11 import java.util.ArrayList; |
1439
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
12 import java.util.HashMap; |
3859
62332fa199bf
Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents:
1507
diff
changeset
|
13 import java.util.List; |
1439
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
14 |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
15 /** |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
16 * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a> |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
17 */ |
1503
3304608baf35
Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1478
diff
changeset
|
18 public class PropertySetting implements Property, Cloneable { |
1439
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
19 |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
20 /**The settings name.*/ |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
21 protected String name; |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
22 |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
23 /** The default value.*/ |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
24 protected String value; |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
25 |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
26 /** Additional attributes.*/ |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
27 protected HashMap<String, String> attributes; |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
28 |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
29 /** |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
30 * Create a new StyleSetting for theme attribution. |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
31 */ |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
32 public PropertySetting() { |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
33 this.attributes = new HashMap<String, String>(); |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
34 } |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
35 |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
36 |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
37 /** |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
38 * Create a new PropertySet. |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
39 * @param name The attribute name. |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
40 * @param value The current value. |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
41 */ |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
42 public PropertySetting( |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
43 String name, |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
44 String value) |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
45 { |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
46 this.name = name; |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
47 this.value = value; |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
48 this.attributes = new HashMap<String, String>(); |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
49 } |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
50 |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
51 public void setName(String name) { |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
52 this.name = name; |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
53 } |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
54 |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
55 public void setValue(String value) { |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
56 this.value = value; |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
57 } |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
58 |
1478
237e7450ae2e
Save output settings in chart properties dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1463
diff
changeset
|
59 public void setAttribute(String k, String v) { |
237e7450ae2e
Save output settings in chart properties dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1463
diff
changeset
|
60 attributes.put(k, v); |
1439
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
61 } |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
62 |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
63 public String getName() { |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
64 return this.name; |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
65 } |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
66 |
1507
c21d14e48040
Improved validation and property handling.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1503
diff
changeset
|
67 public Object getValue() { |
1439
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
68 return this.value; |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
69 } |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
70 |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
71 public String getAttribute(String key) { |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
72 return attributes.get(key); |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
73 } |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
74 |
3859
62332fa199bf
Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents:
1507
diff
changeset
|
75 public List<String> getAttributeList() { |
1439
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
76 return new ArrayList<String>(attributes.keySet()); |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
77 } |
1503
3304608baf35
Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1478
diff
changeset
|
78 |
3859
62332fa199bf
Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents:
1507
diff
changeset
|
79 @Override |
1503
3304608baf35
Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1478
diff
changeset
|
80 public Object clone() { |
3304608baf35
Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1478
diff
changeset
|
81 PropertySetting clone = new PropertySetting(this.getName(), |
1507
c21d14e48040
Improved validation and property handling.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1503
diff
changeset
|
82 this.getValue().toString()); |
1503
3304608baf35
Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1478
diff
changeset
|
83 for(String s: this.getAttributeList()) { |
3304608baf35
Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1478
diff
changeset
|
84 clone.setAttribute(s, this.getAttribute(s)); |
3304608baf35
Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1478
diff
changeset
|
85 } |
3304608baf35
Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1478
diff
changeset
|
86 return clone; |
3304608baf35
Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1478
diff
changeset
|
87 } |
1439
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
88 } |
4df2d9a4b9b4
Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
89 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |