1 package fr.ifremer.reefdb.ui.swing.action;
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.quadrige3.ui.swing.AbstractUIHandler;
27 import fr.ifremer.quadrige3.ui.swing.action.AbstractChangeScreenAction;
28 import fr.ifremer.quadrige3.ui.swing.model.AbstractBeanUIModel;
29 import fr.ifremer.reefdb.ui.swing.util.ReefDbUI;
30 import org.nuiton.jaxx.application.swing.AbstractApplicationUIHandler;
31
32
33
34
35
36 public class QuitScreenAction<M extends AbstractBeanUIModel<?, M>, UI extends ReefDbUI<M, ?>, H extends AbstractUIHandler<M, UI>>
37 extends AbstractCheckBeforeChangeScreenAction<M, UI, H> {
38
39 private final Class<? extends AbstractReefDbSaveAction> saveActionClass;
40
41
42
43
44
45
46
47
48 public QuitScreenAction(H handler, boolean hideBody, Class<? extends AbstractReefDbSaveAction> saveActionClass) {
49 super(handler, hideBody);
50 this.saveActionClass= saveActionClass;
51 }
52
53
54 @Override
55 protected Class<? extends AbstractReefDbSaveAction> getSaveActionClass() {
56 return saveActionClass;
57 }
58
59
60 @Override
61 protected AbstractApplicationUIHandler<?, ?> getSaveHandler() {
62 return handler;
63 }
64
65
66 @Override
67 protected Class<? extends AbstractChangeScreenAction> getGotoActionClass() {
68 return null;
69 }
70
71
72 @Override
73 protected boolean isModelModify() {
74 return getModel().isModify();
75 }
76
77
78 @Override
79 protected boolean isModelValid() {
80 return getModel().isValid();
81 }
82
83
84 @Override
85 protected void setModelModify(boolean modelModify) {
86 getModel().setModify(modelModify);
87 }
88
89 }