xiejun
2023-07-27 5f545a51231ab4955763fd812a0d914b1d8bc561
1
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
 
package com.vci.ubcs.codeapply;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.LinkedHashMap;
import com.vci.base.ui.swing.VCIOptionPane;
import com.vci.base.ui.swing.components.VCIJDialog.DialogResult;
 
public class RMDataReferTempDialogActionListener implements ActionListener {
 
    private RMDataReferTempDialog owner = null;
    public RMDataReferTempDialogActionListener(RMDataReferTempDialog owner){
        this.owner = owner;
        this.initActionMap();
    }
 
    private LinkedHashMap<String, Runnable> actionMaps = new LinkedHashMap<String, Runnable>();
    private void initActionMap(){
        actionMaps.put("ok", new Runnable() { public void run() {
            ok();
        }});
        actionMaps.put("cancel", new Runnable() { public void run() {
            cancel();
        }});
    }
 
    @Override
    public void actionPerformed(ActionEvent e) {
        String key = e.getActionCommand();
        if(actionMaps.containsKey(key)){
            actionMaps.get(key).run();
        }
    }
 
    private void ok(){
        if(!owner.isFromTableDoubleClick()){
            /*LinkedList<RMDataObject> list = this.owner.getRMDataMainPanel().getTablePanel().getSelectedRowObjects();
            if(list.size() > 1) {
                VCIOptionPane.showMessageDialog(this.owner, "不允许选择多条数据进行操作!");
                return;
            } else if(list.size() <= 0) {
                VCIOptionPane.showMessageDialog(this.owner, "请选择数据进行操作!");
                return;
            }*/
        }
        owner.setDialogResult(DialogResult.OK);
        close();
        owner.getDialogCallback().run();
    }
 
    private void cancel(){
        owner.setDialogResult(DialogResult.CANCEL);
        close();
    }
 
    private void close(){
        owner.setVisible(false);
    }
}