annotate gwt-client/src/main/java/org/dive4elements/river/client/shared/model/PropertyGroup.java @ 5861:172338b1407f

GWT client: Added copyright header.
author Sascha L. Teichmann <teichmann@intevation.de>
date Sun, 28 Apr 2013 14:30:15 +0200
parents 5aa05a7a34b7
children ea9eef426962
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 *
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
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
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
6 * documentation coming with Dive4Elements River for details.
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: 1503
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.List;
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
13
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
14 /**
3859
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
15 * A group of properties.
1439
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: 1465
diff changeset
18 public class PropertyGroup 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 group 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 protected List<Property> properties;
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
24
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
25 public PropertyGroup() {
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
26 }
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
27
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
28 public PropertyGroup(String name) {
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
29 this.name = name;
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
30 }
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 PropertyGroup(String name, List<Property> properties) {
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
33 this.name = name;
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
34 this.properties = properties;
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 public String getName() {
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
38 return this.name;
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
39 }
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
40
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
41 public void setName(String name) {
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
42 this.name = name;
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
43 }
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
44
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
45 public List<Property> getProperties() {
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
46 return this.properties;
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
47 }
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
48
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
49 public void setProperties(List<Property> properties) {
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
50 this.properties = properties;
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
51 }
1465
d0bcf5ba7adf Create the properties dialog content dynamically based on the properties read
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1463
diff changeset
52
d0bcf5ba7adf Create the properties dialog content dynamically based on the properties read
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1463
diff changeset
53 public Property getPropertyByName(String name) {
d0bcf5ba7adf Create the properties dialog content dynamically based on the properties read
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1463
diff changeset
54 for (int i = 0; i < properties.size(); i++) {
d0bcf5ba7adf Create the properties dialog content dynamically based on the properties read
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1463
diff changeset
55 if (properties.get(i).getName().equals(name)) {
d0bcf5ba7adf Create the properties dialog content dynamically based on the properties read
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1463
diff changeset
56 return properties.get(i);
d0bcf5ba7adf Create the properties dialog content dynamically based on the properties read
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1463
diff changeset
57 }
d0bcf5ba7adf Create the properties dialog content dynamically based on the properties read
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1463
diff changeset
58 }
d0bcf5ba7adf Create the properties dialog content dynamically based on the properties read
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1463
diff changeset
59 return null;
d0bcf5ba7adf Create the properties dialog content dynamically based on the properties read
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1463
diff changeset
60 }
1503
3304608baf35 Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1465
diff changeset
61
3859
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
62 @Override
1503
3304608baf35 Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1465
diff changeset
63 public Object clone() {
3304608baf35 Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1465
diff changeset
64 PropertyGroup clone = new PropertyGroup(this.getName());
3304608baf35 Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1465
diff changeset
65 List<Property> cloneList = new ArrayList<Property>();
3304608baf35 Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1465
diff changeset
66 for(Property p: properties) {
3304608baf35 Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1465
diff changeset
67 cloneList.add((Property)p.clone());
3304608baf35 Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1465
diff changeset
68 }
3304608baf35 Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1465
diff changeset
69 clone.setProperties(cloneList);
3304608baf35 Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1465
diff changeset
70 return clone;
3304608baf35 Issue 433.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1465
diff changeset
71 }
3859
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
72
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
73 @Override
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
74 public String toString() {
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
75 StringBuilder buf = new StringBuilder();
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
76
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
77 for(Property p : properties) {
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
78 buf.append(p.getName());
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
79 buf.append("=");
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
80 if(p instanceof PropertySetting) {
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
81 buf.append(((PropertySetting)p).getValue().toString());
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
82 }
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
83 buf.append(" ");
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
84 }
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
85
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
86 return buf.toString();
62332fa199bf Work on "Date" support for ManualPointsEditor.
Christian Lins <christian.lins@intevation.de>
parents: 1503
diff changeset
87 }
1439
4df2d9a4b9b4 Added interfaces and container for output settings.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
88 }

http://dive4elements.wald.intevation.org