1 package fr.ifremer.dali.ui.swing.content.home;
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 com.google.common.collect.ImmutableList;
27 import fr.ifremer.dali.ui.swing.action.AbstractCheckModelAction;
28 import fr.ifremer.dali.ui.swing.action.AbstractDaliSaveAction;
29 import fr.ifremer.quadrige3.ui.swing.model.AbstractBeanUIModel;
30 import org.nuiton.jaxx.application.swing.AbstractApplicationUIHandler;
31
32 import java.util.List;
33
34
35
36
37 public class ClearAction extends AbstractCheckModelAction<HomeUIModel, HomeUI, HomeUIHandler> {
38
39
40
41
42
43
44 public ClearAction(final HomeUIHandler handler) {
45 super(handler, false);
46 }
47
48
49 @Override
50 public void doAction() throws Exception {
51
52
53 getModel().setCampaign(null);
54 getModel().setProgram(null);
55 getModel().setLocation(null);
56 getModel().setSearchDate(null);
57 getModel().setStartDate(null);
58 getModel().setEndDate(null);
59 getUI().getEndDateEditor().setEnabled(false);
60 getUI().getEndDateEditor().setVisible(false);
61 getUI().getAndLabel().setVisible(false);
62 getModel().setState(null);
63 getModel().setSynchronizationStatus(null);
64 getModel().setName(null);
65 getModel().setComment(null);
66
67
68 getModel().getSurveysTableUIModel().setBeans(null);
69
70 getUI().getProgramCombo().requestFocus();
71 }
72
73
74 @Override
75 protected Class<? extends AbstractDaliSaveAction> getSaveActionClass() {
76 return SaveAction.class;
77 }
78
79
80 @Override
81 protected boolean isModelModify() {
82 return getModel().isModify();
83 }
84
85
86 @Override
87 protected void setModelModify(boolean modelModify) {
88 getModel().setModify(modelModify);
89 }
90
91
92 @Override
93 protected boolean isModelValid() {
94 return getModel().isValid();
95 }
96
97
98 @Override
99 protected AbstractApplicationUIHandler<?, ?> getSaveHandler() {
100 return getHandler();
101 }
102
103 @Override
104 protected List<AbstractBeanUIModel> getOtherModelsToModify() {
105 return ImmutableList.of(
106 getModel().getSurveysTableUIModel(),
107 getModel().getOperationsTableUIModel()
108 );
109 }
110
111 }