1 package fr.ifremer.dali.ui.swing.content.manage.program.programs;
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 import fr.ifremer.dali.dto.configuration.programStrategy.ProgramDTO;
27 import fr.ifremer.dali.service.DaliBusinessException;
28 import fr.ifremer.dali.ui.swing.content.manage.program.ProgramsUIModel;
29 import fr.ifremer.dali.ui.swing.util.table.AbstractDaliTableUIModel;
30
31 import java.util.List;
32
33
34
35
36 public class ProgramsTableUIModel extends AbstractDaliTableUIModel<ProgramDTO, ProgramsTableRowModel, ProgramsTableUIModel> {
37
38 private boolean saveEnabled;
39 public static final String PROPERTY_SAVE_ENABLED = "saveEnabled";
40
41 private ProgramsUIModel parentModel;
42 public static final String EVENT_SAVE_STRATEGIES = "saveStrategies";
43 public static final String EVENT_REMOVE_LOCATIONS = "removeLocations";
44 public static final String EVENT_RESELECT = "reselect";
45
46 @Override
47 public ProgramsTableRowModel addNewRow(ProgramDTO bean) {
48 throw new DaliBusinessException("New Program is forbidden");
49 }
50
51 public boolean isSaveEnabled() {
52 return saveEnabled;
53 }
54
55 public void setSaveEnabled(boolean saveEnabled) {
56 boolean oldValue = isSaveEnabled();
57 this.saveEnabled = saveEnabled;
58 firePropertyChange(PROPERTY_SAVE_ENABLED, oldValue, saveEnabled);
59 }
60
61 public ProgramsUIModel getParentModel() {
62 return parentModel;
63 }
64
65 public void setParentModel(ProgramsUIModel parentModel) {
66 this.parentModel = parentModel;
67 }
68
69 public void fireSaveStrategies() {
70 firePropertyChange(EVENT_SAVE_STRATEGIES, null, null);
71 }
72
73 public void fireRemoveLocations(List<Integer> locationIds) {
74 firePropertyChange(EVENT_REMOVE_LOCATIONS, null, locationIds);
75 }
76
77 public void fireReselect() {
78 firePropertyChange(EVENT_RESELECT, null, null);
79 }
80
81 public void clear() {
82 setBeans(null);
83 }
84 }