1 package fr.ifremer.dali.ui.swing.content.manage.campaign.menu;
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.ui.swing.action.AbstractCheckModelAction;
27 import fr.ifremer.dali.ui.swing.action.AbstractDaliSaveAction;
28 import fr.ifremer.dali.ui.swing.content.manage.campaign.CampaignsUI;
29 import fr.ifremer.dali.ui.swing.content.manage.campaign.CampaignsUIModel;
30 import fr.ifremer.dali.ui.swing.content.manage.program.SaveAction;
31 import org.nuiton.jaxx.application.swing.AbstractApplicationUIHandler;
32
33
34
35
36 public class ClearAction extends AbstractCheckModelAction<CampaignsMenuUIModel, CampaignsMenuUI, CampaignsMenuUIHandler> {
37
38
39
40
41
42
43 public ClearAction(final CampaignsMenuUIHandler handler) {
44 super(handler, false);
45 }
46
47
48 @Override
49 public void doAction() throws Exception {
50
51 getModel().clear();
52
53 getUI().getStartDateCombo().setSelectedItem(null);
54 getUI().getEndDateCombo().setSelectedItem(null);
55
56
57 if (getLocalModel() != null && getLocalModel().getCampaignsTableUIModel() != null)
58 getLocalModel().getCampaignsTableUIModel().setBeans(null);
59 }
60
61
62 @Override
63 protected Class<? extends AbstractDaliSaveAction> getSaveActionClass() {
64 return SaveAction.class;
65 }
66
67
68 @Override
69 protected boolean isModelModify() {
70 final CampaignsUIModel model = getLocalModel();
71 return model != null && model.isModify();
72 }
73
74
75 @Override
76 protected void setModelModify(boolean modelModify) {
77 CampaignsUIModel model = getLocalModel();
78 if (model != null) {
79 model.setModify(modelModify);
80 }
81 }
82
83
84 @Override
85 protected boolean isModelValid() {
86 final CampaignsUIModel model = getLocalModel();
87 return model == null || model.isValid();
88 }
89
90
91 @Override
92 protected AbstractApplicationUIHandler<?, ?> getSaveHandler() {
93 return getHandler().getCampaignsUI().getHandler();
94 }
95
96 private CampaignsUIModel getLocalModel() {
97 final CampaignsUI ui = getHandler().getCampaignsUI();
98 if (ui != null) {
99 return ui.getModel();
100 }
101 return null;
102 }
103
104 }