1 package fr.ifremer.dali.ui.swing.content.home.operation;
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.AbstractCheckBeforeChangeScreenAction;
27 import fr.ifremer.dali.ui.swing.action.AbstractDaliSaveAction;
28 import fr.ifremer.dali.ui.swing.content.home.HomeUI;
29 import fr.ifremer.dali.ui.swing.content.home.SaveAction;
30 import org.nuiton.jaxx.application.swing.AbstractApplicationUIHandler;
31
32 import static org.nuiton.i18n.I18n.t;
33
34
35
36
37 public abstract class AbstractEditOperationAction extends AbstractCheckBeforeChangeScreenAction<OperationsTableUIModel, OperationsTableUI, OperationsTableUIHandler> {
38
39
40
41
42
43
44
45 protected AbstractEditOperationAction(OperationsTableUIHandler handler, boolean hideBody) {
46 super(handler, hideBody);
47 }
48
49
50 @Override
51 public boolean prepareAction() throws Exception {
52 boolean canContinue = super.prepareAction();
53 if (canContinue && (getModel().isModify() || getModel().getMainUIModel().isModify())) {
54 getContext().getDialogHelper().showWarningDialog(
55 t("dali.home.samplingOperation.error.message"),
56 t("dali.home.samplingOperation.error.title"));
57 canContinue = false;
58 }
59 return canContinue;
60 }
61
62
63 @Override
64 protected Class<? extends AbstractDaliSaveAction> getSaveActionClass() {
65 return SaveAction.class;
66 }
67
68
69 @Override
70 protected boolean isModelModify() {
71 return getModel().getMainUIModel().isModify();
72 }
73
74
75 @Override
76 protected void setModelModify(boolean modelModify) {
77 getModel().getMainUIModel().setModify(modelModify);
78 }
79
80
81 @Override
82 protected boolean isModelValid() {
83 return getModel().getMainUIModel().isValid();
84 }
85
86
87 @Override
88 protected AbstractApplicationUIHandler<?, ?> getSaveHandler() {
89 return getUI().getParentContainer(HomeUI.class).getHandler();
90 }
91 }