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 package org.ximtec.igesture.tool.view.admin.wrapper;
27
28 import java.util.ArrayList;
29 import java.util.List;
30
31 import org.ximtec.igesture.core.DataObject;
32 import org.ximtec.igesture.core.DataObjectWrapper;
33 import org.ximtec.igesture.core.DefaultPropertyChangeNotifier;
34 import org.ximtec.igesture.core.GestureSet;
35 import org.ximtec.igesture.tool.view.MainModel;
36
37
38 public class GestureSetList extends DefaultPropertyChangeNotifier implements DataObjectWrapper{
39
40 public static final String PROPERTY_SETS = "sets";
41
42 MainModel model;
43
44 List<GestureSet> sets;
45
46
47 public GestureSetList(MainModel mainModel) {
48 model = mainModel;
49 sets = model.getGestureSets();
50 }
51
52
53 public void addGestureSet(GestureSet gestureSet) {
54 model.getStorageManager().store(gestureSet);
55 sets = model.getGestureSets();
56 propertyChangeSupport.fireIndexedPropertyChange(PROPERTY_SETS, 0, null, gestureSet);
57 }
58
59
60 public void removeGestureSet(GestureSet gestureSet) {
61 model.getStorageManager().remove(gestureSet);
62 sets = model.getGestureSets();
63 propertyChangeSupport.fireIndexedPropertyChange(PROPERTY_SETS, 0, gestureSet, null);
64 }
65
66
67 public List<GestureSet> getGestureSets() {
68 return sets;
69 }
70
71 public String getName(){
72 return "GestureSets";
73 }
74
75 @Override
76 public String toString() {
77 return getName();
78 }
79
80
81
82 @Override
83 public List<DataObject> getDataObjects() {
84 List<DataObject> result = new ArrayList<DataObject>();
85 result.addAll(getGestureSets());
86 return result;
87 }
88 }